1,构造方法:
- vector<type> vecList 创建一个没有任何元素的向量
- vector<type> vecList(otherVecList) 用另一个类型相同向量初始化该向量
- vector<type> vecList(size) 初始化一个固定size的向量
- vector<type> vecList(n, element) 初始化n个相同元素的向量
- vector<type> vecList(begin,end) 初始化向量中的某一段元素,从begin 到 end - 1
2 ,操作(插入,删除,遍历)
- vecList.clear() 从容器中删除所有元素
- vecList.erase(position) 删除指定位置的元素
- vecList.erase(begin,end) 删除一段元素,从begin 到end -1
- vecList.insert(position,element) 插入元素到指定位置上
- vecList.insert(position.n,element) 插入n个相同元素到指定位置上
- vecList.insert(position,begin,end) 将自身的begin到end -1的元素插入到指定位置上
- vecList.push_back(element) 在末尾添加一个元素
- vecList.pop_back() 删除最后一个元素
- vecList.resize(num) 将元素个数改为num,用默认构造函数初始化增加的元素
- vecList.resize(num,elem) 将元素个数改为num,用elem初始化增加的元素
迭代示例:
vector<int> intList; vector<int>::iterator intVecIter; for (intVecIter = intList.begin();intVecIter != intList.end(); ++intVecIter) { cout << *intVecIter << endl; }
向量访问操作:
vecList.at(index) 返回指定位置上的元素
vecList[index] 返回指定位置上的元素
vecList.front() 返回第一个元素(不检查容器是否为空)
vecList.back() 返回最后一个元素(不检查容器是否为空)
向量容器大小操作:
vecList.capacity() 不重新分配内存时的最大容量
vecList.empty() 空返回true,非空返回false
vecList.size() 元素个数
vecList.max_size() 可以插入到容器中的最大个数
示例代码1
#include <vector> #include <iostream> using namespace std; int main() { vector<int> intList; int i; // 从尾部添加4个元素 intList.push_back(13); intList.push_back(75); intList.push_back(24); intList.push_back(32); // 用for循环遍历 cout << "List Elements: "; for(i = 0; i < 4; i++) { cout << intList[i] << " "; } cout << endl; for(i = 0; i < 4; i++) { intList[i] *= 2; } cout << "List Elements: "; for(i = 0; i < 4; i++) { cout << intList[i] << " "; } cout << endl; // 用迭代器遍历 vector<int>::iterator listIter; cout << "List Elements: "; for (listIter = intList.begin(); listIter != intList.end(); ++listIter) { cout << *listIter << " "; } cout <<endl; // 插入元素 listIter = intList.begin(); ++listIter; ++listIter; intList.insert(listIter,88); cout << "List Elements: "; for (listIter = intList.begin(); listIter != intList.end(); ++listIter) { cout << *listIter << " "; } cout <<endl; }