C++11 中vector的常用用法与实例
#include <iostream>
#include <vector>
using namespace std;
int main()
{
//vector的初始化
vector<int>c={1,2,3,4};
vector<int>d(c);
vector<int>e(c.begin(),c.begin()+2);
vector<int>h(c);
//vector中插入元素
d.insert(d.begin()+1,2);
e.insert(e.begin(),2,1);
h.insert(h.end(),e.begin(),e.end());
cout<<"\nC: ";for(i:c)cout<<i<<" -> ";
cout<<"\nD: ";for(i:d)cout<<i<<" -> ";
cout<<"\nE: ";for(i:e)cout<<i<<" -> ";
cout<<"\nH: ";for(i:h)cout<<i<<" -> ";
//删除vector中的元素
vector<int>g(d);
vector<int>f(e);
vector<int>q(h);
g.erase(g.begin());
f.erase(f.begin()+1,f.begin()+3);
q.pop_back();
c.clear();
cout<<"\nG: ";for(i:g)cout<<i<<" -> ";
cout<<"\nF: ";for(i:f)cout<<i<<" -> ";
cout<<"\nQ: ";for(i:q)cout<<i<<" -> ";
cout<<"\nC: ";for(i:c)cout<<i<<" -> ";
//访问vector
cout<<"\nD: ";for(i:d)cout<<i<<" -> ";cout<<"pos 1 of D: "<<d.at(1);
cout<<"\nD: ";for(i:d)cout<<i<<" -> ";cout<<"front of D: "<<d.front();
cout<<"\nD: ";for(i:d)cout<<i<<" -> ";cout<<"back of D: "<<d.back()<<endl;
//iterator of vector
for(auto i=h.begin();i!=h.end();i++){
cout<<*i<<" => ";
}
cout<<endl;
for(auto i=h.rbegin();i!=h.rend();i++){
cout<<*i<<" => ";
}
//assigning of vector
vector<int>a={1,2,3,4,};
vector<int>b={1,2,3,4,5,6};
a.assign(3,11);
cout<<"\nA: ";for(i:a)cout<<i<<" -> ";
a.assign(b.begin(),b.end());
//交换vector
cout<<"\nA: ";for(i:a)cout<<i<<" -> ";
cout<<"\nC: ";for(i:d)cout<<i<<" -> ";
a.swap(d);
cout<<"\nA: ";for(i:a)cout<<i<<" -> ";
cout<<"\nC: ";for(i:d)cout<<i<<" -> ";
return 0;
}