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