最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C++ push方法與push_back方法常見(jiàn)方法介紹

 更新時(shí)間:2022年11月24日 09:15:23   作者:Wanderer001  
push與push_back是STL中常見(jiàn)的方法,都是向數(shù)據(jù)結(jié)構(gòu)中添加元素,本文還將簡(jiǎn)述push對(duì)應(yīng)的stack與queue系列,常見(jiàn)方法的介紹,以及與push_back相對(duì)應(yīng)的vector系列常見(jiàn)方法介紹,感興趣的朋友跟隨小編一起看看吧

【摘要】

push與push_back是STL中常見(jiàn)的方法,都是向數(shù)據(jù)結(jié)構(gòu)中添加元素。初識(shí)STL,對(duì)于添加元素的方法以產(chǎn)生混淆,這里暫對(duì)兩種方法作出比較分析。此外,本文還將簡(jiǎn)述push對(duì)應(yīng)的stack與queue系列,常見(jiàn)方法的介紹,以及與push_back相對(duì)應(yīng)的vector系列常見(jiàn)方法介紹,詳見(jiàn)下文。

【正文】

  • push_back 方法介紹
vector::void push_back (const value_type& val);
vector::void push_back (value_type&& val);

該函數(shù)將一個(gè)新的元素加到vector的最后面,位置為當(dāng)前最后一個(gè)元素的下一個(gè)元素,新的元素的值是val的拷貝(或者是移動(dòng)拷貝)

  • vector 常見(jiàn)方法介紹

(1)vector< 類(lèi)型 > 標(biāo)識(shí)符 ;

(2)vector< 類(lèi)型 > 標(biāo)識(shí)符(最大容量) ;

(3)vector< 類(lèi)型 > 標(biāo)識(shí)符(最大容量,初始所有值);

(4) int i[4] = {12,3,4,5};

vector< 類(lèi)型 > vi(i , i+2); //得到i索引值為3以后的值 ;  

(5)vector< vector<int> > //vi 定義2維的容器;記得一定要有空格,不然可能會(huì)報(bào)錯(cuò)

vector< int > line // 在使用的時(shí)候一定要首先將vi個(gè)行進(jìn)行初始化;   
 
        for(int i = 0 ; i < 10 ; i ++)  
 
        {  
 
            vector.push_back(line);  
 
        }  

vector 定義二維數(shù)組,長(zhǎng)度可以不預(yù)先確定。

(6)C++ vector排序

vector< int > vi ;   
 
vi.push_back(1);  
 
vi.push_back(3);  
 
vi.push_back(0);  
 
sort(vi.begin() , vi.end()); /// /從小到大  
 
reverse(vi.begin(),vi.end()); /// 從大到小 

(7)順序訪問(wèn)

         vector < int > vi ;   
 
        for( int i = 0 ; i < 10 ; i ++)  
 
        {  
 
            vi.push_back(i);  
 
        }   
 
        for(int i = 0 ; i < 10 ; i ++) /// 第一種調(diào)用方法  
 
        {  
 
            cout <<vi[i] <<" " ;   
 
        }  
 
        for(vector<int>::iterator it = vi.begin() ;it !=vi.end() ; it++) ///第二種調(diào)用方法  
 
        {  
 
            cout << *it << " " ;  
 
        } 

(8)查找

vector < int > vi ;   
for( int i = 0 ; i < 10 ; i ++)  
{  
 
   vector.push_back(i);  
 
}   
vector < int >::interator it = find(vi.begin() , vi.end(),3) ;  
cout << *it << endl ; ///返回容器內(nèi)找到值的位置。

(9)使用數(shù)組對(duì)C++ vector進(jìn)行初始化

int i[10] ={1,2,3,4,5,6,7,78,8} ;  
///第一種   
vector<int> vi(i+1,i+3); ///從第2個(gè)元素到第3個(gè)元素  
for(vector <int>::interator it = vi.begin() ; it != vi.end() ; it++)  
{  
 
     cout << *it <<" " ;   
 
} 

(10) 結(jié)構(gòu)體的 vector

struct temp  
{  
 
public :  
 
string str ;   
 
public :  
 
int id ;  
 
}tmp;
int main()  
{  
 
vector <temp> t ;   
 
temp w1 ;   
 
w1.str = "Hello world" ;  
 
w1.id = 1 ;   
 
t.push_back(t1);  
 
cout << w1.str << "," <<w1.id <<endl ;   
 
return 0 ;   
 
}
  • push 函數(shù)介紹
stack::push();   //在棧頂增加元素
                 
queue::push();   //將x 接到隊(duì)列的末端。
  • stack與queue常見(jiàn)方法介紹

1、stack

stack 模板類(lèi)的定義在<stack>頭文件中。

stack 模板類(lèi)需要兩個(gè)模板參數(shù),一個(gè)是元素類(lèi)型,一個(gè)容器類(lèi)型,但只有元素類(lèi)型是必要的,在不指定容器類(lèi)型時(shí),默認(rèn)的容器類(lèi)型為deque。

定義stack 對(duì)象的示例代碼如下:

stack<int> s1;

stack<string> s2;

stack 的基本操作有:

入棧,如例:s.push();在棧頂增加元素

出棧,如例:s.pop();注意,出棧操作只是刪除棧頂元素,并不返回該元素。

訪問(wèn)棧頂,如例:s.top()

判斷??眨缋簊.empty(),當(dāng)棧空時(shí),返回true。

訪問(wèn)棧中的元素個(gè)數(shù),如例:s.size()。

2、queue

queue 模板類(lèi)的定義在<queue>頭文件中。

與stack 模板類(lèi)很相似,queue 模板類(lèi)也需要兩個(gè)模板參數(shù),一個(gè)是元素類(lèi)型,一個(gè)容器類(lèi)型,元素類(lèi)型是必要的,容器類(lèi)型是可選的,默認(rèn)為deque 類(lèi)型。

定義queue 對(duì)象的示例代碼如下:

queue<int> q1;
 
queue<double> q2;

queue 的基本操作有:

入隊(duì),如例:q.push(x); 將x 接到隊(duì)列的末端。

出隊(duì),如例:q.pop(); 彈出隊(duì)列的第一個(gè)元素,注意,并不會(huì)返回被彈出元素的值。

訪問(wèn)隊(duì)首元素,如例:q.front(),即最早被壓入隊(duì)列的元素。

訪問(wèn)隊(duì)尾元素,如例:q.back(),即最后被壓入隊(duì)列的元素。

判斷隊(duì)列空,如例:q.empty(),當(dāng)隊(duì)列空時(shí),返回true。

訪問(wèn)隊(duì)列中的元素個(gè)數(shù),如例:q.size()

到此這篇關(guān)于C++ push方法與push_back方法的文章就介紹到這了,更多相關(guān)C++ push方法與push_back方法內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Matlab繪制中國(guó)地圖超全教程詳解

    Matlab繪制中國(guó)地圖超全教程詳解

    這篇文章主要介紹了如何利用Matlab繪制中國(guó)地圖,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Matlab有一定的幫助,感興趣的小伙伴可以學(xué)習(xí)一下
    2022-02-02
  • C語(yǔ)言實(shí)現(xiàn)常用字符串庫(kù)函數(shù)(推薦)

    C語(yǔ)言實(shí)現(xiàn)常用字符串庫(kù)函數(shù)(推薦)

    這篇文章主要介紹了C語(yǔ)言實(shí)現(xiàn)常用字符串庫(kù)函數(shù),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-11-11
  • C++ 中類(lèi)的拷貝、賦值、銷(xiāo)毀的實(shí)例詳解

    C++ 中類(lèi)的拷貝、賦值、銷(xiāo)毀的實(shí)例詳解

    這篇文章主要介紹了C++ 中類(lèi)的拷貝、賦值、銷(xiāo)毀的實(shí)例詳解的相關(guān)資料,希望通過(guò)本文能幫助到大家,需要的朋友可以參考下
    2017-09-09
  • C/C++實(shí)現(xiàn)俄羅斯方塊游戲

    C/C++實(shí)現(xiàn)俄羅斯方塊游戲

    這篇文章主要介紹了如何利用C/C++實(shí)現(xiàn)經(jīng)典游戲之一的俄羅斯方塊,文中的實(shí)現(xiàn)步驟講解詳細(xì),對(duì)我們學(xué)習(xí)C語(yǔ)言和C++有一定的幫助,需要的可以參考一下
    2022-02-02
  • C語(yǔ)言實(shí)現(xiàn)鏈隊(duì)列基本操作

    C語(yǔ)言實(shí)現(xiàn)鏈隊(duì)列基本操作

    這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言實(shí)現(xiàn)鏈隊(duì)列基本操作,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • opencv實(shí)現(xiàn)三幀差法解析

    opencv實(shí)現(xiàn)三幀差法解析

    這篇文章主要介紹了opencv實(shí)現(xiàn)三幀差法的相關(guān)資料,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • C語(yǔ)言中帶返回值的宏定義方式

    C語(yǔ)言中帶返回值的宏定義方式

    這篇文章主要介紹了C語(yǔ)言中帶返回值的宏定義方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • C語(yǔ)言 從根本上理解數(shù)組

    C語(yǔ)言 從根本上理解數(shù)組

    數(shù)組是一組有序的數(shù)據(jù)的集合,數(shù)組中元素類(lèi)型相同,由數(shù)組名和下標(biāo)唯一地確定,數(shù)組中數(shù)據(jù)不僅數(shù)據(jù)類(lèi)型相同,而且在計(jì)算機(jī)內(nèi)存里連續(xù)存放,地址編號(hào)最低的存儲(chǔ)單元存放數(shù)組的起始元素,地址編號(hào)最高的存儲(chǔ)單元存放數(shù)組的最后一個(gè)元素
    2022-04-04
  • C語(yǔ)言編程數(shù)據(jù)結(jié)構(gòu)的棧和隊(duì)列

    C語(yǔ)言編程數(shù)據(jù)結(jié)構(gòu)的棧和隊(duì)列

    本篇文章是C語(yǔ)言編程篇,主要為大家介紹C語(yǔ)言編程中的數(shù)據(jù)結(jié)構(gòu),詳細(xì)的講解了數(shù)據(jù)結(jié)構(gòu)的棧和隊(duì)列有需要的朋友可以借鑒參考下,希望可以有所幫助
    2021-09-09
  • C語(yǔ)言獲取文件長(zhǎng)度的方法

    C語(yǔ)言獲取文件長(zhǎng)度的方法

    這篇文章主要介紹了C語(yǔ)言獲取文件長(zhǎng)度的相關(guān)知識(shí),包括使用標(biāo)準(zhǔn)庫(kù)方法和使用Linux系統(tǒng)調(diào)用,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2023-10-10

最新評(píng)論

当阳市| 乌鲁木齐县| 米泉市| 丰宁| 错那县| 池州市| 吉安市| 个旧市| 鹤峰县| 福海县| 任丘市| 义马市| 资中县| 都匀市| 阳春市| 于都县| 凭祥市| 毕节市| 高阳县| 孟村| 瑞丽市| 台南县| 原平市| 保定市| 海南省| 南宫市| 鄯善县| 资阳市| 綦江县| 利辛县| 合山市| 峨边| 虎林市| 桂平市| 祥云县| 容城县| 舞钢市| 鹤岗市| 沁阳市| 自治县| 长丰县|