1、vector对象的定义和初始化
vector<T> v1; vector保存类型为T的对象。默认构造函数,v1为空
vector<T> v2(v1); v2是v1的一个副本
vector<T> v3(n, i); v3是包含n个值为i的元素
vector<T> v4(n); v4含有初始化的元素的n个副本
注意:vector对象(以及其他标准库容器对象)的重要属性就在于可以运行时高效地添加元素。虽然可以对给定元素个数的vector对象预先分配内存,但更有效的方法是先初始化一个空vector对象,然后再动态地增加元素。
2、vector对象的操作
- v.empty() 如果v为空,则返回true,否则返回false
- v.size() 返回v中元素的个数
- v.push_back(t) 在v的末尾增加一个值为t的元素
- v[n] 返回v中位置为n的元素
- v1 = v2 把v1的元素替换为v2中元素的副本
- v1 == v2 如果v1与v2相等,则返回true
- !=, <, <=, >, >= 保持这些操作的惯有的含义
注意:成员函数size返回相应vector类定义的size_type的值。使用size_type类型时,必须指出该类型是在哪里定义的。vector类型总是包括vector的元素类型:
vector<int>::size_type //ok
vector::size_type //error
下标操作
//reset the elements in the vector to zero
vector<int> ivec;
for (vector<int>::size_type ix = 0; ix != ivec.size(); ++ix)
ivec[ix] = 0;
注意:C++程序员优先选用!=而不是<来编写循环判断条件;调用size成员函数而不保存它返回的值。
下标操作不能添加元素,仅能对已知的元素进行下标操作。