亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

C++ push方法與push_back方法的使用與區(qū)別

 更新時間:2019年12月08日 14:10:54   作者:小呆呆yy  
這篇文章主要介紹了C++ push方法與push_back方法的使用與區(qū)別,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

【摘要】

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

list 也是使用 push_back .

【正文】

push_back 方法介紹

vector::void push_back (const value_type& val);

vector::void push_back (value_type&& val);

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

vector 常見方法介紹

(1)vector< 類型 > 標識符 ;

(2)vector< 類型 > 標識符(最大容量) ;
(3)vector< 類型 > 標識符(最大容量,初始所有值);
(4) int i[4] = {12,3,4,5};
vector< 類型 > vi(i , i+2); //得到i索引值為3以后的值 ; 
(5)vector< vector<int> > //vi 定義2維的容器;記得一定要有空格,不然可能會報錯

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

vector 定義二維數(shù)組,長度可以不預先確定。
(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)順序訪問

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ù)組對C++ vector進行初始化

int i[10] ={1,2,3,4,5,6,7,78,8} ; 
///第一種 
vector<int> vi(i+1,i+3); ///從第2個元素到第3個元素 
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 接到隊列的末端。

stack與queue常見方法介紹

1、stack

stack 模板類的定義在<stack>頭文件中。

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

定義stack 對象的示例代碼如下:

stack<int> s1;

stack<string> s2;

stack 的基本操作有:

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

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

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

判斷棧空,如例:s.empty(),當??諘r,返回true。

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

2、queue

queue 模板類的定義在<queue>頭文件中。

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

定義queue 對象的示例代碼如下:

queue<int> q1;

queue<double> q2;

queue 的基本操作有:

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

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

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

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

判斷隊列空,如例:q.empty(),當隊列空時,返回true。

訪問隊列中的元素個數(shù),如例:q.size()

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • c++中ref的作用示例解析

    c++中ref的作用示例解析

    這篇文章主要為大家介紹了c++中ref的作用示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-04-04
  • linux c 查找使用庫的cflags與libs的方法詳解

    linux c 查找使用庫的cflags與libs的方法詳解

    本篇文章是對在linux中使用c語言查找使用庫的cflags與libs的方法進行了詳細的分析介紹,需要的朋友參考下
    2013-05-05
  • C++嵌入式內(nèi)存管理詳情

    C++嵌入式內(nèi)存管理詳情

    這篇文章主要介紹了C++嵌入式內(nèi)存管理,是對上一篇內(nèi)存的一個補充,主要講解Linux中的內(nèi)存;這部分對于一些端側(cè)部署的伙伴來說比較重要,推薦針對不同的板子,下面來看看詳細內(nèi)容吧,需要的朋友可以參考一下
    2021-12-12
  • C語言實現(xiàn)哈夫曼編碼

    C語言實現(xiàn)哈夫曼編碼

    這篇文章主要為大家詳細介紹了C語言實現(xiàn)哈夫曼編碼,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-04-04
  • C++/Php/Python/Shell 程序按行讀取文件或者控制臺的實現(xiàn)

    C++/Php/Python/Shell 程序按行讀取文件或者控制臺的實現(xiàn)

    下面小編就為大家?guī)硪黄狢++/Php/Python/Shell 程序按行讀取文件或者控制臺的實現(xiàn)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-03-03
  • C語言函數(shù)調(diào)用基礎應用詳解

    C語言函數(shù)調(diào)用基礎應用詳解

    函數(shù)就是一段封裝好的,可以重復使用的代碼,它使得我們的程序更加模塊化,不需要編寫大量重復的代碼。這篇文章主要介紹了c語言是如何處理函數(shù)調(diào)用的?需要的朋友可以參考下
    2023-02-02
  • 利用C++如何實現(xiàn)一個阻塞隊列詳解

    利用C++如何實現(xiàn)一個阻塞隊列詳解

    這篇文章主要給大家介紹了關于利用C++如何實現(xiàn)一個阻塞隊列的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-10-10
  • C++命名空間?缺省參數(shù)?const總結(jié)?引用總結(jié)?內(nèi)聯(lián)函數(shù)?auto關鍵字詳解

    C++命名空間?缺省參數(shù)?const總結(jié)?引用總結(jié)?內(nèi)聯(lián)函數(shù)?auto關鍵字詳解

    這篇文章主要介紹了C++命名空間?缺省參數(shù)?const總結(jié)?引用總結(jié)?內(nèi)聯(lián)函數(shù)?auto關鍵字詳解的相關資料,需要的朋友可以參考下
    2023-01-01
  • Qt實現(xiàn)導出QTableWidget/QTableView數(shù)據(jù)

    Qt實現(xiàn)導出QTableWidget/QTableView數(shù)據(jù)

    這篇文章主要介紹了在Qt中實現(xiàn)將QTableWidget或者QTableView中的數(shù)據(jù)直接導出的示例代碼,文中的示例代碼講解詳細,感興趣的可以了解一下
    2022-01-01
  • C++中atof?函數(shù)的介紹

    C++中atof?函數(shù)的介紹

    這篇文章主要給大家分享的是C++中atof?函數(shù)的介紹,在?stdlib.h?中?atof?函數(shù),可用于將?char?字符串轉(zhuǎn)為?float?/?double?浮點數(shù)類型,想具體了解語法的小伙伴可以參考下面文章的內(nèi)容,希望對大家有所幫助
    2021-11-11

最新評論