博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
STL--queue学习笔记
阅读量:6434 次
发布时间:2019-06-23

本文共 1345 字,大约阅读时间需要 4 分钟。

<queue>

只能访问queue<T>容器适配器的第一个和最后一个元素。只能在容器的末尾添加新元素,只能从头部移除元素FIFO(先进先出)

1.初始化

需要头文件<queue>

queue<int>que;

 

2.成员函数

C++队列Queue类成员函数如下:

back()返回最后一个元素

empty()如果队列空则返回真

front()返回第一个元素

pop()删除第一个元素

push()在末尾加入一个元素

size()返回队列中元素的个数

 

3.queue 的基本操作举例如下:

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

queue出队,如例:q.pop(); 弹出队列的第一个元素,注意,并不会返回被弹出元素的值。

访问queue队首元素,如例:q.front(),即最早被压入队列的元素。

访问queue队尾元素,如例:q.back(),即最后被压入队列的元素。

判断queue队列空,如例:q.empty(),当队列空时,返回true

访问队列中的元素个数,如例:q.size()

 

queue队列中没有clear()操作:

因此清空队列有几种方法:

第一种:直接用空的队列对象赋值

queue
q1q1=queue
();

第二种:遍历出队列

while(!q.empty())q.pop();

第三种:使用swap,这种是最高效的,定义clear,保持STL容器的标准

void clear(queue
& q){ queue
empty; swap(empty,q);}

 

测试代码

#include
#include
using namespace std;void clear(queue
&q){ queue
empty; swap(empty,q); } int main(){ queue
q; q.push(1); //在队列末尾依次插入1 2 3 q.push(2); q.push(3); int u=q.back(); //返回队列中最后一个元素 cout<<"队列最后一个元素为:"<
<
();*//* while(!q.empty()) q.pop();*/ clear(q); //queue中没有clear操作,用函数定义clear函数,使用swap cout<
<

转载于:https://www.cnblogs.com/LjwCarrot/p/9050623.html

你可能感兴趣的文章
[译]CSS-理解百分比的background-position
查看>>
虚拟机安装CentOS
查看>>
Idea里面老版本MapReduce设置FileInputFormat参数格式变化
查看>>
在 win10 环境下,设置自己写的 程序 开机自动 启动的方法
查看>>
Unity3d游戏开发之-单例设计模式-多线程一
查看>>
通过jquery定位元素
查看>>
Tooltip表单验证的注册表单
查看>>
UWP开发中两种网络图片缓存方法
查看>>
超8千Star,火遍Github的Python反直觉案例集!
查看>>
【msdn wpf forum翻译】如何在wpf程序(程序激活时)中捕获所有的键盘输入,而不管哪个元素获得焦点?...
查看>>
全球首家!阿里云获GNTC2018 网络创新大奖 成唯一获奖云服务商
查看>>
Python简单HttpServer
查看>>
Java LinkedList工作原理及实现
查看>>
负载均衡SLB的基本使用
查看>>
Centos 7 x86 安装JDK
查看>>
微信小程序的组件用法与传统HTML5标签的区别
查看>>
Hangfire 使用笔记
查看>>
(C#)Windows Shell 外壳编程系列8 - 同后缀名不同图标?
查看>>
教你彻底学会c语言基础——文件操作
查看>>
如何使用免费控件将Word表格中的数据导入到Excel中
查看>>