Vector
vector容器,是STL的一个常用容器。相较于普通数组,可以实现容量动态调整,即进行元素的插入和删除时,可以动态的调整占用的内存空间,而这个过程不需要人为的调整存储空间。
容器的使用
对于vector容器,在使用前,要声明vector头文件,std命名空间。
创建一个vector
vector<int> V;
V = { 7,3,2,6,0,1,5,4 };
其他类型的动态数组命名方式与之类似。此外,也可以自己申请空间,如用reverse()函数等方法,或者直接在声明时确定好空间。
增减
- push_back(x):尾部增加一个元素
- insert(it, x):在迭代器指向元素前增加一个元素X
- insert(it,n,x):在迭代器指向元素前增加n个元素X
- erase(it):删除向量中迭代器指向元素
- erase(first,last):删除指定区间内的元素
- pop_back():删除最后一个元素
- clear():删除所有元素
遍历函数
- at():返回位置元素的引用
- front():返回首元素的位置
- back():返回队尾元素的位置
- begin():头指针
- end():尾指针,指向最后一个元素的下一个位置
数目相关
- empty():判断向量是否为空
- size():返回向量中的元素数目
- capacity():返回向量中可以容纳的最大值
- max_size():返回向量中可以容纳的元素数目
其他函数
- swap():交换两个向量中的数据
- assign():设置元素值
- reserve():增加容器的容量
- shrink_to_fit():将内存减少到实际存储的元素数目大小
- emplace():在指定的位置直接生成一个元素
- emplace_back():在序列尾部生成一个元素