C++:Vector的基础函数

Vector的基础函数

之前有学习过 vector、set、map等容器,都是需要什么搜什么,没有详细的了解其中的内容。最近在看 STL 的相关内容,就顺手整理一些基础性内容,避免以后遇到的时候再临时抱佛脚。


1. 构造函数

vector<T> v;     //创建一个空的vector
vector<T> v(int nSize, const t& t);     //创建一个vector,元素个数为nSize,元素值均为t
vector<T> v(int nSize);     //创建一个vector,元素个数为nSize
vector<T> v(const vector&);     //复制构造函数
vector<T> v = vector(begin,end);     //复制[begin,end]范围内另一个数组的元素到 v中

2. 增加元素

v.push_back(const T& x);     //在vector尾部增加一个元素x
v.insert(iterator it, const T& x);     //在vector中迭代器指向的元素前插入一个元素x
v.insert(iterator it, int n,const T& x);     //在vector中迭代器指向的元素前插入n个相同的元素x
v.insert(iterator it,const_iterator first,const_iterator last);     //在vector中迭代器指向的元素前插入另一个相同类型vector中[first,last]间的元素

3. 删除元素

v.erase(iterator it);     //删除vector中迭代器指向的元素
v.erase(iterator first, iterator last);     //删除vector中[first,last)的元素
v.pop_back();     //删除vector中的最后一个元素
v.clear();     //清空向量中的所有元素

4. 遍历vector

v.at(int nPos);     //返回nPos位置元素
v.front();     //返回vector的首元素
v.back();     //返回vector的尾元素
v.begin();     //返回指向第一个元素的迭代器
v.end();     //返回指向最后一个元素下一位置的迭代器
v.rbegin();     //反向迭代器,指向最后一个元素
v.rend();     //反向迭代器,指向第一个元素的前一个位置

5. 判断函数

v.empty();     //判断vector是否为空

6. 大小函数

v.size();     //返回vector中元素个数
v.capacity();     //返回当前vector中所能容纳的最大元素个数
v.max_size();     //返回当前vector最大可允许的元素数量个数

7. 其他函数

v.swap(vector& v2);     //交换两个同类型的vector
v.assign(int n,const T& t);     //设置vector中第n个元素的值为t
v.assign(const_iterator first,const_iterator last);     //vector中[first,last)中的元素设置成当前vector元素

个别函数的详细介绍

erase()、fill()置0操作、find()查找操作、swap()交换操作、vector释放内存、对Vector进行复制

猜你喜欢

转载自blog.csdn.net/qq_33021529/article/details/123973349