对vector的基本操作
#include<iostream>
#include<vector>
using namespace std;
void Test()
{
//vector容器的基础使用
//存放int基础类型
vector<int> vec;
//尾插法
vec.push_back(1);
vec.push_back(2);
vec.push_back(2);
vec.push_back(3);
//尾部删除元素
vec.pop_back();
//下标来访问和更改元素
vec[0] = 19;
//访问容器的头和尾
cout<<vec.front()<<endl;
//打印出容器的大小
cout<<vec.size()<<endl;
}
void Test1()
{
vector<int> v1;
v1.push_back(1);
v1.push_back(2);
v1.push_back(2);
v1.push_back(3);
//复制构造
vector<int> v2=v1;
//复制构造
vector<int> v3(v1);
//范围构造
vector<int> v4(v1.begin(),v1.begin()+2);
//可以初始化向量容器的大小。
cout<<v4.size()<<endl;
//打印出向量容器的容量
cout<<vec.capacity<<endl;
}
int main()
{
Test();
Test1();
return 0;
}
迭代器遍历向量容器:
#include<iostream>
#include<vector>
using namespace std;
void Test1()
{
vector<int> v1;
v1.push_back(1);
v1.push_back(2);
v1.push_back(2);
v1.push_back(3);
//for循环遍历向量容器
for(int i=0;i<v1.size();i++)
{
cout<<v1[i]<<endl;
}
//正向迭代器遍历向量容器
for(vector<int>::iterator it = v1.begin();it!= v1.end();it++)
{
cout<<"hahaha"<<*it<<"xixix"<<endl;
}
//反向迭代器遍历向量容器
for(vector<int>::reverse_iterator it = v1.rbegin();it!= v1.rend();it++)
{
cout<<"hahaha"<<*it<<"xixix"<<endl;
}
}
int main()
{
Test();
Test1();
return 0;
}
Tip:迭代器可以指定删除向量容器的某一个元素。