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 }

 

posted @ 2013-08-20 23:08  cheshulin  阅读(161)  评论(0编辑  收藏  举报