1 、基本操作
(1)头文件#include<vector>.
(2)创建vector对象,vector<int> vec;
(3)尾部插入数字:vec.push_back(a);
(4)使用下标访问元素,cout<<vec[0]<<endl;记住下标是从0开始的。
(5)使用迭代器访问元素.
vector<int>::iterator it;
for(it=vec.begin();it!=vec.end();it++)
cout<<*it<<endl;
(6)插入元素: vec.insert(vec.begin()+i,a);在第i+1个元素前面插入a;
(7)删除元素: vec.erase(vec.begin()+2);删除第3个元素
vec.erase(vec.begin()+i,vec.end()+j);删除区间[i,j-1];区间从0开始
(8)向量大小:vec.size();
(9)清空:vec.clear();
2.示例程序:
#include<iostream>
#include<vector>
using namespace std;
int main(){
vector<int> vec;
vec.push_back(4);//向尾部添加元素
vec.push_back(10);
vec.push_back(7);
cout<<vec[0]<<endl<<endl;
vector<int>::iterator it;//迭代器去打印
for(it = vec.begin();it != vec.end();it++)
cout<<*it<<endl;
cout<<endl;
vec.pop_back();//删除尾部元素
for(it = vec.begin();it != vec.end();it++)
cout<<*it<<endl;
cout<<endl;
vec.insert(vec.begin() + 1,6);//在指定位置插入元素
for(it = vec.begin();it != vec.end();it++)
cout<<*it<<endl;
cout<<endl;
vec.erase(vec.begin() + 2);//注意只能通过地址删除,不能通过下标删除
for(it = vec.begin();it != vec.end();it++)
cout<<*it<<endl;
cout<<endl;
cout<<vec.size()<<endl;//打印长度
vec.clear(); //清空容器
for(it = vec.begin();it != vec.end();it++)//清空后没有
cout<<*it<<endl;
cout<<endl;
return 0;
}
运行结果如下: