/*vector向量容器*/
//用数组方式访问vector元素
#include<iostream>
#include<vector>
#include<cstdio>
using namespace std;
int main()
{
vector<int>v;
v.push_back(20);//尾端插入新元素
v.push_back(26);
v.push_back(12);
for(int i=0;i<v.size();i++)
cout<<v[i]<<' ';
getchar();
return 0;
}
//输出:20 26 12
//用迭代器访问vector
#include<iostream>
#include<vector>
#include<cstdio>
using namespace std;
vector<int>v;
void print()//迭代器遍历
{
int j;
vector<int>::iterator i;
for(i=v.begin(),j=0;i!=v.end();i++,j++)
cout<<"v["<<j<<"]="<<*i<<" ";
cout<<endl;
}
int main()
{
int j;
v.push_back(0);/*尾端插入新元素*/ print();
v.push_back(1);print();
/*v.clear();全部清空元素 */
v.push_back(2);print();
v.insert(v.begin()+2,9);/*插入9在第二个后面 */print();
v.insert(v.begin(),5);/*插入5为首元素print(); */print();
v.insert(v.end(),12);/*插入12为末元素 */print();
v.erase(v.begin()+1);/*删除第2个元素 */print();
v.erase(v.begin(),v.begin()+2);/*删除前两个元素 */print();
swap(v[1],v[2]);print();
cout<<v.empty()<<endl;/*判断是否为空 */
cout<<v.size()<<endl;/*元素实际个数 */
cout<<v.max_size()<<endl;/*可容纳的最大元素个数 */
cout<<v.size()<<endl;
cout<<v.capacity()<<endl;/*当前可容纳的vector元素个数 */
cout<<v.front()<<endl;/*首元素引用*/
cout<<v.back()<<endl;/*末元素引用 */
v.pop_back();/*删除末尾的一个元素 */print();
v.reserve(30);/*调整数据空间大小 */
cout<<v.capacity()<<endl;
vector<int>::reverse_iterator ri;//反向迭代器
for(ri=v.rbegin();ri!=v.rend();ri++)//首尾反向
cout<<*ri<<" ";
getchar();
return 0;
}
/*输出:
v[0]=0
v[0]=0 v[1]=1
v[0]=0 v[1]=1 v[2]=2
v[0]=0 v[1]=1 v[2]=9 v[3]=2
v[0]=5 v[1]=0 v[2]=1 v[3]=9 v[4]=2
v[0]=5 v[1]=0 v[2]=1 v[3]=9 v[4]=2 v[5]=12
v[0]=5 v[1]=1 v[2]=9 v[3]=2 v[4]=12
v[0]=9 v[1]=2 v[2]=12
v[0]=9 v[1]=12 v[2]=2
0
3
1073741823
3
8
9
2
v[0]=9 v[1]=12
30
12 9*/
/*reverse 颠倒
vector 向量*/