青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

黎明的剔透里伸出了你沁清的曖昧

Graphics|EngineDev|GameDev|2D&3D Art

  C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
  60 隨筆 :: 1 文章 :: 18 評論 :: 0 Trackbacks
vector應用基礎:
頭文件:#include<vector>
常用的public類型為iterator、const_iterator、reverse_iterator和const_reverse_iterator迭代器類型,可以直接通過vector<T>::iterator等方式使用

創建vector對象
:以下四個vector構造函數均可創建一個vector對象
(1)vector(const A&a=A())
例如:vector<int> v;

(2)vector(size_type n)

vector<double> v(10);

(3)vector(size_type n,const T&value)

vector<double> v(10,9.3)

(4)vector(const vector&)

vector<char> v1(5,'k');
vector<char> v2(v1);

(5)vector(const inputiterator first,const inputiterator last,const A&a=A())

int arry[]={1,2,3,4,5,6};
vector<int> v(arry,arry+5);

初始化賦值:
vector提供的push_back函數,常用來進行初始化容器,push_back在容器的尾端插入新的元素value

 1 #include <iostream>
 2 #include <vector>
 3 using namespace std;
 4 int main(){
 5     vector<int> v;
 6     v.push_back(20);
 7     v.push_back(10);
 8     v.push_back (5);
 9 for(int i=0;i<v.size();i++)
10         cout<<"a["<<i<<"]="<<v[i]<<endl;
11     return 0;
12 }

元素的遍歷:
迭代器方式的訪問時使用vector容器提供的iterator類型,定義一個迭代器變量,例如vector<int>::iterator i; 然后對迭代器進行++操作,將迭代器從一個元素移動到下一個元素位置,從而通過迭代器的*操作,將所有元素讀取出來
vector提供了begin()和end()函,用于獲取首元素的迭代器和最后一個元素的下一個位置的迭代器。
iterator begin();
iterator end();
 1 #include <iostream>
 2 #include <vector>
 3 using namespace std;
 4 int main(){
 5     vector<int> v;
 6     v.push_back(20);
 7     v.push_back(10);
 8     v.push_back (5);  
 9     vector<int>::iterator i,iend;//起始和末尾迭代器
10     iend=v.end();
11     int j;
12     for(i=v.begin(),j=0;i!=iend;i++,j++){
13        cout<<"v["<<j<<"]="<<*i<<endl;//*i為迭代器方式的訪問
14     }
15     return 0;
16 }



元素的插入:
不同于在vector容器尾插部添加元素的push_back 函數,insert函數可在任意位置插入元素,由于插入時要先將插入位置后的元素后移,以空出一個位置進行插入,因此insert比push_back函數耗時。
iterator insert(iterator pos, const T&X);

元素的刪除:
vector容器提供了一個erase函數,用來刪除迭代器pos所指的元素或者迭代器[first,last)的所有元素,原型如下:
(1)iterator erase(iterator pos);
(2)iterator erase(iterator first,iterator last);
另外一個刪除元素的函數是void clear(),它調用erase函數,將[begin(),end())區間的所有vector元素全部清除。
 1 #include <iostream>
 2 #include <vector>
 3 
 4 using namespace std;
 5 
 6 class MyVector{
 7     public:
 8         MyVector(char *name,int age){
 9           this->name=name;
10           this->age=age;
11         }
12         ~MyVector(){}
13     public:
14         char *name;
15         int age;
16 };
17 
18 int main(){
19     MyVector *pDog=new MyVector("dog",1);
20     MyVector *pMonkey=new MyVector("monkey",2);
21     MyVector *pChicken=new MyVector("chicken",3);
22     MyVector *pSnake=new MyVector("snake",4);
23 
24     vector<MyVector *>v;
25     
26     v.push_back(pDog);
27     v.push_back(pMonkey);
28     v.push_back(pChicken);
29     v.push_back(pSnake);
30     
31     v.erase(v.begin()+1);
32     delete pMonkey;
33 
34     vector<MyVector*>::iterator i,iend;
35     iend=v.end();
36     for(i=v.begin();i!=iend;i++)
37         cout<<(*i)->name<<' '<<(*i)->age<<endl;
38     //清除所有vector元素
39     v.clear();
40         cout<<"執行clear()"<<endl<<"所有vector元素均已全部清除"<<endl;
41         return 0;
42 }


元素的反向遍歷:
利用vector提供的反向迭代器reverse_iterator,以及相應的rbegin()和rend()函數,可反向遍歷vector容器的元素,rbegin()函數返回的迭代器指向反向遍歷的首元素,rend函數返回的迭代器則指向反向遍歷的尾部,原型如下:
(1)reverse_iterator rbegin();
(2)reverse_iterator rend();

vector的交換:
vector利用swap算法,實現交換兩個vector容器的swap 成員函數
原型:void swap(vector &,vector &);

其他常用函數:
bool empty();
判斷vector是否為空 若容器沒有一個元素則返回true,后則返回false;
size_type size();
當前vector容器的實際元素個數
size_type max_size();
系統所允許的vector容器的最大元素個數
size_type capacity();
當前可容納的vector元素個數
reference back()
返回vector容器末元素,要求vector不能為空
void pop_back();
與push_back()函數相反,pop_back函數用于刪除末尾的一個容器元素
posted on 2011-07-27 23:32 情絕格調(fresmaster) 閱讀(748) 評論(0)  編輯 收藏 引用 所屬分類: Coding
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            老牛影视一区二区三区| 好吊色欧美一区二区三区四区| 中国女人久久久| 一区二区欧美日韩视频| 午夜欧美不卡精品aaaaa| 麻豆免费精品视频| 国产精品嫩草影院av蜜臀| 精品999网站| 中文av一区二区| 久久中文字幕一区| 日韩午夜在线电影| 亚洲欧美一区二区三区在线| 欧美精品成人一区二区在线观看| 黄色av一区| 久久综合久久久| 久久精品欧洲| 亚洲第一二三四五区| 久久这里有精品视频| 久久中文在线| 蜜臀av一级做a爰片久久| 久久国产一区二区| 黄色一区二区三区四区| 两个人的视频www国产精品| 久久国产精品久久久久久电车| 国内视频精品| 欧美肥婆在线| 欧美激情一区二区三区四区| 日韩亚洲国产欧美| av成人毛片| 国产精品欧美日韩一区| 久久精品国产在热久久| 久久免费视频在线观看| 在线观看视频一区| 亚洲国产欧美精品| 美女久久一区| 99在线视频精品| 亚洲图色在线| 精品不卡视频| 亚洲精品欧美一区二区三区| 国产精品乱码妇女bbbb| 蜜臀va亚洲va欧美va天堂| 欧美成人中文字幕在线| 亚洲一区二区三区三| 先锋影音国产一区| 亚洲精品国产精品国自产观看| 亚洲六月丁香色婷婷综合久久| 国产精品美女在线| 欧美mv日韩mv国产网站| 欧美视频在线视频| 老司机精品久久| 欧美日韩国产首页| 久久国产综合精品| 欧美—级高清免费播放| 久久久91精品国产一区二区三区 | 久久最新视频| 亚洲国产精品一区制服丝袜| 日韩午夜av电影| 国产午夜精品理论片a级探花| 欧美激情91| 国产乱码精品1区2区3区| 欧美福利视频在线| 国产女人aaa级久久久级| 亚洲国产99| 国产亚洲精品美女| 夜夜精品视频| 亚洲国产色一区| 亚洲欧美日韩中文播放| 99re视频这里只有精品| 久久精品欧洲| 午夜精品一区二区三区四区| 欧美www视频| 午夜激情综合网| 久久免费国产| 久久婷婷人人澡人人喊人人爽| 国产精品扒开腿做爽爽爽软件 | 裸体一区二区三区| 欧美亚洲一区二区三区| 欧美日韩一级视频| 亚洲国产精品一区二区尤物区| 国内视频一区| 先锋亚洲精品| 久久成人一区| 国产精品乱码久久久久久| 99热在这里有精品免费| 日韩一区二区福利| 免费久久99精品国产| 久久人人爽人人爽| 国产欧美 在线欧美| 在线一区欧美| 亚洲视频碰碰| 欧美日韩在线三区| 日韩视频精品在线观看| 亚洲最新在线| 欧美日韩在线亚洲一区蜜芽| 亚洲免费电影在线观看| 亚洲深夜福利在线| 国产精品久久久久一区二区三区| 在线亚洲+欧美+日本专区| 中文一区字幕| 欧美日韩在线不卡一区| 亚洲天堂av在线免费| 欧美日韩国产天堂| 亚洲福利电影| 夜夜嗨一区二区三区| 欧美日韩精品国产| 亚洲色图制服丝袜| 欧美一区网站| 国产在线精品一区二区夜色| 欧美中文字幕| 欧美高清在线播放| 99热这里只有成人精品国产| 欧美日韩在线一区二区| 亚洲一区二区免费在线| 欧美在线综合视频| 激情综合久久| 欧美风情在线| 亚洲午夜激情在线| 久久国产精品一区二区| 亚洲电影第1页| 欧美激情精品久久久| 中国av一区| 久久最新视频| 99国产精品久久久久久久成人热| 亚洲中字在线| 亚洲视频一区在线| 久久久久久午夜| 一本久久青青| 欧美在线观看一区二区| 亚洲国产乱码最新视频| 日韩午夜电影av| 在线日韩欧美| 性欧美8khd高清极品| 一区二区三欧美| 美国成人直播| 美女免费视频一区| 国产亚洲免费的视频看| 亚洲视频中文字幕| 亚洲免费在线看| 欧美日韩免费一区二区三区视频| 久久午夜视频| 国产美女精品在线| 亚洲在线视频网站| 亚洲欧美bt| 国产精品一二三四区| 亚洲综合国产| 久久精品国产第一区二区三区最新章节| 国产精品成人v| 亚洲天堂免费在线观看视频| 亚洲综合日韩| 国产麻豆综合| 久久av一区二区三区漫画| 久久亚洲私人国产精品va媚药| 国内精品视频666| 久久成人18免费网站| 老司机一区二区三区| 亚洲国内精品| 欧美日韩精品免费观看视频完整| 99在线精品视频| 亚洲欧美激情视频| 国产一区二区无遮挡| 久久先锋影音| 亚洲激情国产精品| 亚洲伦理在线免费看| 欧美视频日韩视频在线观看| 亚洲在线播放| 女仆av观看一区| 亚洲最新在线视频| 国产精品免费视频xxxx| 久久国产精品亚洲77777| 欧美风情在线观看| 亚洲一区二区三区四区在线观看| 国产精品揄拍500视频| 久久亚洲精品伦理| 亚洲精品一区二区三区婷婷月| 午夜精品亚洲| 亚洲激情图片小说视频| 国产精品成人午夜| 老司机精品福利视频| 在线视频欧美一区| 欧美a级一区| 亚洲女人天堂av| 在线看视频不卡| 国产精品日本一区二区| 中文一区在线| 激情久久久久久久| 欧美日韩一区三区四区| 久久久一二三| 亚洲欧美日韩区| 91久久精品美女高潮| 久久久久久久久蜜桃| 亚洲一二三区视频在线观看| 精品1区2区3区4区| 国产精品天天看| 欧美精品在欧美一区二区少妇| 欧美一区二区三区在线观看视频 | 亚洲国产高清一区二区三区| 欧美色图一区二区三区| 理论片一区二区在线| 香港久久久电影| 一区二区三区久久久|