STL_queue容器

1、queue簡介

queue全部元素的進出都必須符合」先進先出」的條件,只有queue的頂端元素,纔有機會被外界取用。queue不提供遍歷功能,也不提供迭代器。函數

queue是簡單地裝飾deque容器而成爲另外的一種容器。指針

#include <queue>code

2、queue對象的默認構造

queue採用模板類實現,queue對象的默認構造形式:queue<T> queT;對象

queue<int> queInt;      //一個存放int的queue容器。
queue<float> queFloat;   //一個存放float的queue容器。
queue<string> queString;   //一個存放string的queue容器。
//尖括號內還能夠設置指針類型或自定義類型。

3、queue的push()與pop()方法

queue.push(elem); //往隊尾添加元素blog

queue.pop(); //從隊頭移除第一個元素隊列

queue<int> queInt;

queInt.push(1);
queInt.push(3);
queInt.push(5);
queInt.push(7);
queInt.push(9);
queInt.pop();
queInt.pop();
//此時queInt存放的元素是5,7,9

4、queue對象的拷貝構造與賦值

queue(const queue &que); //拷貝構造函數string

queue& operator=(const queue &que); //重載等號操做符模板

queue<int> queIntA;
queIntA.push(1);
queIntA.push(3); 
queue<int> queIntB(queIntA);    //拷貝構造
queue<int> queIntC;
queIntC = queIntA;              //賦值

5、queue的數據存取

queue.back(); //返回最後一個元素class

queue.front(); //返回第一個元素容器

queue<int> queIntA;
queIntA.push(1);
queIntA.push(3);
queIntA.push(5);
queIntA.push(7);
queIntA.push(9);
int iFront = queIntA.front();       //1
int iBack = queIntA.back();       //9

6、queue的大小

queue.empty(); //判斷隊列是否爲空

queue.size(); //返回隊列的大小

queue<int> queIntA;    
queIntA.push(1);      
queIntA.push(3);      
queIntA.push(5);       
queIntA.push(7);       
queIntA.push(9);       
if (!queIntA.empty()){
   int iSize = queIntA.size();     //5
}
相關文章
相關標籤/搜索