亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

初探STL容器之Vector

趙春朋 / 1380人閱讀

vector

特點(diǎn):

1.可變長(zhǎng)的動(dòng)態(tài)數(shù)組
2.使用時(shí)包含頭文件 #include
3.支持隨機(jī)訪問(wèn)迭代器
? 根據(jù)下標(biāo)隨機(jī)訪問(wèn)某個(gè)元素時(shí)間為常數(shù)
? 在尾部添加速度很快
? 在中間插入慢

成員函數(shù)

初始化

[cpp] view plaincopy
01.vector();              初始化成空  
02.vector(int n);               初始化成有n個(gè)元素  
03.vector(int n, const T & val);     初始化成有n個(gè)元素, 每個(gè)元素的值都是val,類型是T  
04.vector(iterator first, iterator last);  初始化為與別的容器上區(qū)間[first, last)一致的內(nèi)容  

舉例:

1.創(chuàng)建一個(gè)int類型的空的vector對(duì)象:

  

vector intvec; 

2.創(chuàng)建一個(gè)包含5個(gè)int類型數(shù)據(jù)的vector:

 

 vector intvec(5);

3.創(chuàng)建一個(gè)包含5個(gè)int類型數(shù)據(jù)的vector,并且都初始化為2:

vector intvec(5, int(2));

4.通過(guò)復(fù)制某vec容器來(lái)創(chuàng)建

vector intvec(vec.begin+M,vec.begin+N)

元素的訪問(wèn)

intvec.at(index) 

返回由index指定的位置上的元素

intvec[index]

返回由index指定的位置上的元素

舉例:

[cpp] view plaincopy
01.include   
02.#include   
03.using namespace std;  
04.int main()  
05.{  
06.    vector vec(10);  
07.    for (int i = 0;i != vec.size();i++)  
08.    {  
09.        vec.at(i) = i;  
10.        //vec[i] = i ;  
11.    }  
12.  
13.    for (int i = 0;i != vec.size();i++)  
14.    {  
15.        cout << vec.at(i)<

容器的大小

表達(dá)式

作用

intvec.capacity()

返回不重新分配空間可以插入到容器intvec中的元素的最大個(gè)數(shù)

intvec.empty() 

容器intvec為空,返回true;否則,返回false

Intvec.size()

返回容器intvec中當(dāng)前的個(gè)數(shù)

intvec.resize(num)

將元素個(gè)數(shù)改為num。如果size()增加,默認(rèn)的構(gòu)造函數(shù)負(fù)責(zé)創(chuàng)建這些新元素

intvec.resize(num, elem)

將元素個(gè)數(shù)改為num。如果size()增加,默認(rèn)的構(gòu)造函數(shù)將這些新元素初始化為elem

舉例:

[cpp] view plaincopy
01.#include   
02.#include   
03.using namespace std;  
04.int main()  
05.{  
06.    vector vec1;  
07.    cout << vec1.empty()< vec2(20);  
11.    cout << vec2.empty()< vec3(15,1);  
15.    cout << vec3.capacity()<

容器的操作

語(yǔ)句

 作用


intvec.clear()  

從容器中刪除所有元素

intvec.erase(position) 

刪除由position指定的位置上的元素

intvec.erase(beg,end)

刪除從beg到end-1之間的所有元素

intvec.insert(position, elem)

將elem的一個(gè)拷貝插入到由position指定的位置上,并返回新元素的位置

intvec.inser(position, n, elem)

將elem的n個(gè)拷貝插入到由 position指定的位置上

intvec.insert(position, beg, end)

將從beg到end-1之間的所有元素的拷貝插入到intvec中由position指定的位置上

intvec.push_back(elem) 

將elem的一個(gè)拷貝插入到vector的末尾

intvec.pop_back()   

刪除最后元素

intvec.front()

返回第一個(gè)元素的引用,不檢查容器是否為空

Intvec.back()

返回最后一個(gè)元素的引用,不檢查容器是否為空

[cpp] view plaincopy
01.#include   
02.#include   
03.using namespace std;  
04.int main()  
05.{  
06.    vector vec(10,1);  
07.    cout< vec1(1,1);  
12.    vec1.insert(vec1.begin()+1,2); //在該位置插入,把原來(lái)該位置以其以后的元素整體后移  
13.    for(int i = 0;i != vec1.size();i++)  
14.        cout<  
02.#include   
03.using namespace std;  
04.int main()  
05.{  
06.    vector vec(10,1);  
07.    vec.push_back(2);//12  
08.  
09.    cout<

二維數(shù)組

vector< vector > v(3);

//v有3個(gè)元素,
//每個(gè)元素都是vector 容器

[cpp] view plaincopy
01.#include   
02.#include   
03.using namespace std;  
04.int main() {  
05.    vector< vector > v(3);  
06.    for(int i=0; i

輸出:

0 1 2 3

0 1 2 3

0 1 2 3

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/64127.html

相關(guān)文章

  • 初探STL關(guān)聯(lián)容器

    摘要:更加實(shí)際的定義應(yīng)該是一個(gè)集合是一個(gè)容器,它其中所包含的元素的值是唯一的。對(duì)而言,鍵只是指存儲(chǔ)在容器中的某一成員。成員函數(shù)構(gòu)造函數(shù)中的元素都是模板類對(duì)象。元素按照成員變量從小到大排列,缺省情況下用定義關(guān)鍵字的小于關(guān)系。 分類:set, multiset, map, multimap 特點(diǎn):內(nèi)部元素有序排列,新元素插入的位置取決于它的值,查找速度快。 常用函數(shù): find: 查找等于...

    objc94 評(píng)論0 收藏0
  • 熬夜爆肝!C++核心STL容器知識(shí)點(diǎn)匯總整理【3W字干貨預(yù)警 建議收藏】

    摘要:拷貝構(gòu)造函數(shù)示例構(gòu)造無(wú)參構(gòu)造函數(shù)總結(jié)容器和容器的構(gòu)造方式幾乎一致,靈活使用即可賦值操作功能描述給容器進(jìn)行賦值函數(shù)原型重載等號(hào)操作符將區(qū)間中的數(shù)據(jù)拷貝賦值給本身。清空容器的所有數(shù)據(jù)刪除區(qū)間的數(shù)據(jù),返回下一個(gè)數(shù)據(jù)的位置。 ...

    wayneli 評(píng)論0 收藏0
  • STL容器deque

    摘要:如果增加,默認(rèn)的構(gòu)造函數(shù)將這些新元素初始化為隊(duì)列當(dāng)前的元素個(gè)數(shù)交換兩個(gè)隊(duì)列兩個(gè)重載和小結(jié)向量容器,使用線性存儲(chǔ)結(jié)構(gòu),可以像數(shù)組一樣隨機(jī)下標(biāo)訪問(wèn)元素,還可以在尾部插入元素用函數(shù)。 deque 特點(diǎn): 1.雙向隊(duì)列 2.使用時(shí)包含頭文件 #include 3.deque容器與vector類似,用動(dòng)態(tài)數(shù)組來(lái)管理元素,支持隨機(jī)訪問(wèn)。 4.與vector不同的是deque的動(dòng)態(tài)數(shù)組首尾...

    yy13818512006 評(píng)論0 收藏0
  • 初探STL算法

    摘要:算法部分主要由頭文件組成。數(shù)值算法對(duì)容器內(nèi)容進(jìn)行數(shù)值計(jì)算。在指定范圍內(nèi)查找由輸入的另外一對(duì)標(biāo)志的第二個(gè)序列的最后一次出現(xiàn)。重載函數(shù)使用自定義比較操作。刪除指定范圍內(nèi)所有等于指定元素的元素。返回,指出序列中最小的元素。 STL算法部分主要由頭文件,,組成。要使用 STL中的算法函數(shù)必須包含頭文件,對(duì)于數(shù)值算法須包含,中則定義了一些模板類,用來(lái)聲明函數(shù)對(duì)象。 分類 STL中算法大致分為...

    nanfeiyan 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<