Qt中的QQueue類、C++中的queue類


C++中的queue

實現一種先進先出的數據結構,是一個模板類

頭文件 #include<queue>

queue<int> Q;                  //定義一個int型隊列
 Q.empty();   //返回隊列是否為空
 Q.size(); //返回當前隊列長度
 Q.front(); //返回當前隊列的第一個元素
 Q.back(); //返回當前隊列的最后一個元素
 Q.push();     //在隊列后面插入一個元素, 比如插入數字5: Q.push(5)
 Q.pop(); //從當前隊列里,移出第一個元素
 1 #include <iostream>
 2 #include <queue>
 3 
 4 using namespace std;  5 int main()  6 {  7        queue<int> Q;  8        cout<<"queue empty? "<<Q.empty()<<endl;  9 
10        for(int i=0;i<5;i++) 11  { 12               Q.push(i);        //進隊列
13  } 14 
15        cout<<"queue empty? "<<Q.empty()<<endl; 16        cout<<"queue size: "<<Q.size()<<endl; 17        cout<<endl; 18 
19        for(int i=0;i<5;i++) 20  { 21               cout<<"queue front: "<<Q.front()<<endl; 22               Q.pop();                //出隊列
23  } 24 
25        return 0; 26 }

QT中的QQueue

它的父類是QList,是個模板類

頭文件: #include <QQueue>

QQueue<int> Q;                 //定義一個int型隊列
 Q.isEmpty(); //返回隊列是否為空
 Q.size(); //返回隊列元素個數
 Q.clear(); //清空隊列
 Q.enqueue(); //在隊列尾部添加一個元素, 比如插入數字5: Q.enqueue(5)
 Q.dequeue(); //刪除當前隊列第一個元素,並返回這個元素
 Q.head(); //返回當前隊列第一個元素
 Q.last(); //返回當前隊列尾部的元素
 T &  operator[]( int i );        //以數組形式訪問隊列元素
 1 #include <QtGui>
 2 #include <QQueue>
 3 #include <QDebug>
 4 
 5 int main(int argc,char * argv[])  6 {  7     QQueue<int> Q;                              //定義一個int型隊列
 8     qDebug()<<"queue empty: "<<Q.isEmpty();  //返回隊列是否為空
 9 
10     for(int i=0;i<5;i++) 11  { 12          Q.enqueue(i);      //入隊
13  } 14 
15     qDebug()<<"queue empty: "<<Q.isEmpty(); 16     qDebug()<<"queue size: "<<Q.size(); 17 
18     for(int i=0;i<5;i++) 19  { 20      qDebug()<<"queue last: "<<Q.last();            //返回當前隊列最后一個個元素
21      qDebug()<<"queue head: "<<Q.dequeue();         //出隊列,並且返回當前隊列第一個元素
22  } 23 
24     qDebug()<<"queue empty: "<<Q.isEmpty(); 25     qDebug()<<"queue size: "<<Q.size(); 26 
27     return 0; 28 }


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM