![](https://csdnimg.cn/release/download_crawler_static/89128601/bg1.jpg)
C++Vector⽤法详解
vector是C++标准模版库(STL,Standard Template Library)中的部分内容。之所以认为是⼀个容器,是因为它能够像容器⼀样
存放各种类型的对象,简单的说:vector是⼀个能够存放任意类型的动态数组,能够增加和压缩数据。
使⽤vector容器之前必须加上<vector>头⽂件:#include<vector>;
vector属于std命名域的内容,因此需要通过命名限定:using std::vector;也可以直接使⽤全局的命名空间⽅式:using
namespace std;
vector成员函数
c.push_back(elem)在尾部插⼊⼀个elem数据。
复制代码 代码如下:
vector<int> v;
v.push_back(1);
c.pop_back()删除末尾的数据。
复制代码 代码如下:
vector<int> v;
v.pop_back();
c.assign(beg,end)将[beg,end)⼀个左闭右开区间的数据赋值给c。
vector<int> v1,v2;
v1.push_back(10);
v1.push_back(20);
v2.push_back(30);
v2.assign(v1.begin(),v1.end());
c.assign (n,elem)将n个elem的拷贝赋值给c。
复制代码 代码如下:
vector<int> v;
v.assign(5,10);//往v⾥放5个10
c.at(int index)传回索引为index的数据,如果index越界,抛出out_of_range异常。
vecto<int> v;
cout << v.at(2) << endl;//打印vector中下标是2的数据
c.begin()返回指向第⼀个数据的迭代器。
c.end()返回指向最后⼀个数据之后的迭代器。
vector<int> v;
v.push_back(1);
v.push_back(2);
v.push_back(3);
vector<int>::iterator it;
for(it = v.begin();it!=v.end();it++){
}
cout << endl;
c.rbegin()返回逆向队列的第⼀个数据,即c容器的最后⼀个数据。
c.rend()返回逆向队列的最后⼀个数据的下⼀个位置,即c容器的第⼀个数据再往前的⼀个位置。
vector<int> v;
v.push_back(1);
v.push_back(2);
v.push_back(3);
vector<int>::reverse_iterator it;
for(it = v.rbegin();it!=v.rend();it++){