STL_queue容器


prtyaa
prtyaa 2023-12-26 19:23:49 51544 赞同 0 反对 0
分类: 资源
STL_queue容器 一、queue简介 queue所有元素的进出都必须符合”先进先出”的条件,只有queue的顶端元素,才有机会被外界取用。queue不提供遍历功能,也不提供迭代器。 queue是简单地装饰deque容器而成为另外的一种容器。

#include <queue>

二、queue对象的默认构造

queue采用模板类实现,queue对象的默认构造形式:queue<T> queT;

 queue<int> queInt;      //一个存放int的queue容器。
 queue<float> queFloat;   //一个存放float的queue容器。
 queue<string> queString;   //一个存放string的queue容器。
 //尖括号内还可以设置指针类型或自定义类型。          

三、queue的push()与pop()方法

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

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

 

四、queue对象的拷贝构造与赋值

queue(const queue &que); //拷贝构造函数

queue& operator=(const queue &que); //重载等号操作符

 queue<int> queIntA;
 queIntA.push(1);
 queIntA.push(3); 
 queue<int> queIntB(queIntA);    //拷贝构造
 queue<int> queIntC;
 queIntC = queIntA;              //赋值

 

五、queue的数据存取

queue.back(); //返回最后一个元素

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

六、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
 }

如果您发现该资源为电子书等存在侵权的资源或对该资源描述不正确等,可点击“私信”按钮向作者进行反馈;如作者无回复可进行平台仲裁,我们会在第一时间进行处理!

评价 0 条
prtyaaL2
粉丝 1 资源 1949 + 关注 私信
最近热门资源
银河麒麟桌面操作系统备份用户数据  125
统信桌面专业版【全盘安装UOS系统】介绍  120
银河麒麟桌面操作系统安装佳能打印机驱动方法  111
银河麒麟桌面操作系统 V10-SP1用户密码修改  105
最近下载排行榜
银河麒麟桌面操作系统备份用户数据 0
统信桌面专业版【全盘安装UOS系统】介绍 0
银河麒麟桌面操作系统安装佳能打印机驱动方法 0
银河麒麟桌面操作系统 V10-SP1用户密码修改 0
作者收入月榜
1

prtyaa 收益393.62元

2

zlj141319 收益218元

3

1843880570 收益214.2元

4

IT-feng 收益209.03元

5

风晓 收益208.24元

6

777 收益172.71元

7

Fhawking 收益106.6元

8

信创来了 收益105.84元

9

克里斯蒂亚诺诺 收益91.08元

10

技术-小陈 收益79.5元

请使用微信扫码

加入交流群

请使用微信扫一扫!