c stl vector 容器介紹

c stl vector 容器介紹

ID:9280891

大?。?7.50 KB

頁(yè)數(shù):6頁(yè)

時(shí)間:2018-04-26

c stl vector 容器介紹_第1頁(yè)
c stl vector 容器介紹_第2頁(yè)
c stl vector 容器介紹_第3頁(yè)
c stl vector 容器介紹_第4頁(yè)
c stl vector 容器介紹_第5頁(yè)
資源描述:

《c stl vector 容器介紹》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫(kù)。

1、C++STLvector容器介紹介紹std::vector,并且討論它在STL中的算法和條件函數(shù)remove_if()。介紹????????這篇文章的目的是為了介紹std::vector,如何恰當(dāng)?shù)厥褂盟鼈兊某蓡T函數(shù)等操作。本文中還討論了條件函數(shù)和函數(shù)指針在迭代算法中使用,如在remove_if()和for_each()中的使用。通過(guò)閱讀這篇文章讀者應(yīng)該能夠有效地使用vector容器,而且應(yīng)該不會(huì)再去使用C類型的動(dòng)態(tài)數(shù)組了。Vector總覽??????????vector是C++標(biāo)準(zhǔn)模板庫(kù)中的部分內(nèi)容,

2、它是一個(gè)多功能的,能夠操作多種數(shù)據(jù)結(jié)構(gòu)和算法的模板類和函數(shù)庫(kù)。vector之所以被認(rèn)為是一個(gè)容器,是因?yàn)樗軌蛳袢萜饕粯哟娣鸥鞣N類型的對(duì)象,簡(jiǎn)單地說(shuō),vector是一個(gè)能夠存放任意類型的動(dòng)態(tài)數(shù)組,能夠增加和壓縮數(shù)據(jù)。為了可以使用vector,必須在你的頭文件中包含下面的代碼:#includevector屬于std命名域的,因此需要通過(guò)命名限定,如下完成你的代碼:usingstd::vector;vectorvInts;或者連在一起,使用全名:std::vectorvI

3、nts;??建議使用全局的命名域方式:usingnamespacestd;??在后面的操作中全局的命名域方式會(huì)造成一些問(wèn)題。vector容器提供了很多接口,在下面的表中列出vector的成員函數(shù)和操作。(eg:vectorc;)vector的成員函數(shù)c.assign(beg,end)??  將[beg;end)區(qū)間中的數(shù)據(jù)賦值給c。c.assign(n,elem)????????????將n個(gè)elem的拷貝賦值給c。c.at(idx)????????????????????????????傳回

4、索引idx所指的數(shù)據(jù),如果idx越界,拋出out_of_range。c.back()????????????????????????????傳回最后一個(gè)數(shù)據(jù),不檢查這個(gè)數(shù)據(jù)是否存在。c.begin()??????????????????????????指向迭代器中的第一個(gè)數(shù)據(jù)。(vector::iteratoritor;itor=c.begin();)c.capacity()??????????????????????返回容器中數(shù)據(jù)個(gè)數(shù)。c.clear()???????????????????

5、?????????移除容器中所有數(shù)據(jù)。c.empty()??????????????????????????判斷容器是否為空。c.end()??????????????????????????????指向迭代器中的最后一個(gè)數(shù)據(jù)的下一個(gè)位置。c.erase(pos)????????????????????刪除pos位置的數(shù)據(jù),傳回下一個(gè)數(shù)據(jù)的位置。(pos是游標(biāo)iterator)c.erase(beg,end)????????????刪除[beg,end)區(qū)間的數(shù)據(jù),傳回下一個(gè)數(shù)據(jù)的位置。c.front(

6、)????????????????????????????傳回第一個(gè)數(shù)據(jù)。get_allocator??????????????????使用構(gòu)造函數(shù)返回一個(gè)拷貝。c.insert(pos,elem)??????????在pos位置插入一個(gè)elem拷貝,傳回新數(shù)據(jù)位置。c.insert(pos,n,elem)??????在pos位置插入n個(gè)elem數(shù)據(jù)。無(wú)返回值。c.insert(pos,beg,end)????在pos位置插入在[beg,end)區(qū)間的數(shù)據(jù)。無(wú)返回值。c.max_size()??????

7、????????????返回容器中最大數(shù)據(jù)的數(shù)量。c.pop_back()????????????????刪除最后一個(gè)數(shù)據(jù)。(與棧相反)c.push_back(elem)??????在尾部加入一個(gè)數(shù)據(jù)。(與棧相反)c.rbegin()??????????????????????傳回一個(gè)逆向隊(duì)列的第一個(gè)數(shù)據(jù)。c.rend()??????????????????????????傳回一個(gè)逆向隊(duì)列的最后一個(gè)數(shù)據(jù)的下一個(gè)位置。c.resize(num)????????????????重新指定隊(duì)列的長(zhǎng)度。c.res

8、erve()????????????????????保留適當(dāng)?shù)娜萘?。c.size()??????????????????????????返回容器中實(shí)際數(shù)據(jù)的個(gè)數(shù)。c1.swap(c2)??????????????????將c1和c2元素互換。swap(c1,c2)??????????????????同上操作。vectorc????????????創(chuàng)建一個(gè)空的vector,所儲(chǔ)存的數(shù)據(jù)類型為Elemvectorc1(c

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。