Vector学习
1 #include <iostream> 2 #include <vector> 3 #include <stdio.h> 4 #include <algorithm> 5 using namespace std; 6 7 //true不交换 false交换,sort默认是升序。此程序为降序 8 template <class T> 9 bool cmp(const T x,const T y) 10 { 11 if (x>y) return 1; 12 else return 0; 13 } 14 int main() 15 { 16 vector<int>vecm; 17 vecm.push_back(3); 18 vecm.push_back(4); 19 vecm.push_back(5); 20 vecm.push_back(6); 21 vecm.push_back(7); 22 vecm.insert(vecm.begin()+2,100); 23 vector <int>::iterator it; 24 for (it=vecm.begin();it!=vecm.end();++it) 25 { 26 cout<<*it<<endl; 27 } 28 vector <int>::reverse_iterator ri; 29 cout<<"============反向输出==============="<<endl; 30 for (ri=vecm.rbegin();ri!=vecm.rend();++ri) 31 { 32 cout<<*ri<<endl; 33 } 34 vecm.erase(vecm.begin()+2); 35 cout<<"============删除第二个==============="<<endl; 36 for (it=vecm.begin();it!=vecm.end();++it) 37 { 38 cout<<*it<<endl; 39 } 40 sort(vecm.begin(),vecm.end(),cmp<int>); 41 cout<<"============降序排列========"<<endl; 42 for (it=vecm.begin();it!=vecm.end();++it) 43 { 44 cout<<*it<<endl; 45 } 46 cout<<"============vector的最大值====="<<endl; 47 48 cout<<vecm.max_size()<<endl; 49 cout<<"============输出某一个值====="<<endl; 50 cout<<vecm.at(2)<<endl; 51 cout<<"============改变第3个元素======="<<endl; 52 vecm.at(2)=1000; 53 cout<<vecm.at(2)<<endl; 54 cout<<"============所有操作完成======="<<endl; 55 for (int i=0;i<vecm.size();i++) 56 { 57 cout<<vecm.at(i)<<endl; 58 } 59 60 61 return 0; 62 }