模板类vector类似于string,也是一种动态数组,可以在运行阶段设置vector的对象的长度,也可在末尾附加新数据,可以在中间插入新数据。基本上来说,它是使用new创建动态数组的替代品。实际上,vector类确实使用new和delete来管理内存,不过这种工作是自动进行的。
首先使用vector对象,必须在头文件包含vector。
其次,vector包含在名称空间std中,因此可以用using编译指令,using声明或std::vector。
第三,模板使用不同的语法来指出它存储的数据类型。
第四,vector类使用不同的语法来指定元素数。下面来举一个例子:
#include<vector>
...
using namespace std;
vector<int> vi;
int n;
cin >> n;
vector<double> vd(n);//create an array of n double
其中vi是一个vector对象,由于vector对象在插入或添加值时自动调整长度,因此可以将vi的初始长度设置为0。而要调整长度,需要使用vector包中的各种方法。
一般来说,下面的声明创建一个名为vt的vector对象,它可以存储n_elem个类型为typename的元素:
vector<typeName> vt(n_elem);
其中参数n_elem可以是整形常量,也可以整型变量。