一杯清酒邀明月
天下本无事,庸人扰之而烦耳。
posts - 3121,comments - 209,views - 578万

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 }
复制代码
posted on   一杯清酒邀明月  阅读(2432)  评论(0编辑  收藏  举报
编辑推荐:
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
阅读排行:
· 全网最简单!3分钟用满血DeepSeek R1开发一款AI智能客服,零代码轻松接入微信、公众号、小程
· .NET 10 首个预览版发布,跨平台开发与性能全面提升
· 《HelloGitHub》第 107 期
· 全程使用 AI 从 0 到 1 写了个小工具
· 从文本到图像:SSE 如何助力 AI 内容实时呈现?(Typescript篇)
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示