1.头文件:
#include <vector>
- 定义方法:
a)vector<int>v1;//vector元素为 int 型
b)vector<string>v2;// vector元素为string型
vector<node>v3;//入队元素为结构体型,结构体可以自行定义
3.常用操作:
push_back() //在数组的最后添加一个数据
pop_back() //去掉数组的最后一个数据
front() //访问第一个元素
back() //访问最后一个元素
front() //返回第一个元素(栈顶元素)
begin() //得到数组头的指针
end() //得到数组的最后一个单元+1的指针
clear() //移除容器中所有数据
empty() //判断容器是否为空
erase(pos) //删除pos位置的数据
erase(beg,end) //删除[beg,end)区间的数据
size() //回容器中实际数据的个数
c.insert(pos,elem)//在pos位置插入一个elem拷贝
4.举例:
#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
int main()
{
vector <int> v; //定义vector
vector<int>::iterator it; //定义一个vector迭代器
for(int i = 10; i >= 1; i--) //插入数据
v.push_back(i);
cout<<"输出:";
for(it=v.begin();it!=v.end();it++) //输出迭代器的值
cout<<*it<<" ";
cout<<endl;
it-=1;
cout<<"最后一个的值为:"<<*it<<" "<<endl;
v.erase(it);//删除最后一个元素
cout <<"元素个数:" <<v.size() << endl; //输出元素个数
sort(v.begin(), v.end()); //vector排序
cout<<"排序后:";
for(it=v.begin();it!=v.end();it++) //输出vector元素
cout << *it << " ";
cout<<endl;
v.insert(v.begin(),100) ; //在pos位置插入一个elem
cout<<"第一个元素为:" <<v.front()<<endl; //输出第一个元素
v.pop_back();//去掉最后一个元素
cout << "元素个数:" <<v.size() << endl; //输出元素个数
v.clear(); //vector清空
cout <<"清空后元素个数:" << v.size() << endl; //输出元素个数
return 0;
}