STL12-queue容器
queue容器 队列容器 先进先出
队列只能在一端插入 一端删除
队列不能遍历 不提供迭代器 不支持随机访问
#if 1
#include<iostream>
#include<queue>
using namespace std;
void test01() {queue<int> q; //创建队列queue<int> q2(q);q.push(10);q.push(20);q.push(30);q.push(40);cout << "队尾:"<<q.back() << endl;cout << "队头:"<<q.front() << endl;while (!q.empty()) {cout << q.front() << endl;q.pop(); //删除队头}
}
//作业1 queue容器存放对象指针
//作业2 queue容器存放stack容器
int main()
{test01();return 0;
}
#endif
作业:
#if 1
#include<iostream>
#include<queue>
#include<stack>
using namespace std;
class Person {
public:Person(int Age, int Id) :age(Age), id(Id) {}
public:int age;int id;
};
//作业1 queue容器存放对象指针
void test01() {queue<Person*> q;Person p1 = { 23,1 };Person p2 = { 24,2 };Person p3 = { 25,3 };q.push(&p1);q.push(&p2);q.push(&p3);while (q.size() > 0) {Person *p = q.front();cout << (*p).age << " " << (*p).id << endl;q.pop();}}
//作业2 queue容器存放stack容器
void test02() {stack<Person> sp1;Person p1 = { 23,1 };Person p2 = { 24,2 };Person p3 = { 25,3 };sp1.push(p1);sp1.push(p2);sp1.push(p3);stack<Person> sp2 = sp1;queue<stack<Person>> q;q.push(sp1);q.push(sp2);cout << "queue中stack数为:" << q.size() << endl;while (!q.empty()) {stack<Person> s=q.front();cout << "stack数据内容为:" << endl;while (!s.empty()) {Person p = s.top();s.pop();cout << p.age << " " << p.id << endl;}q.pop();}
}int main()
{cout << "test01:queue容器存放对象指针" << endl;test01();cout << "test02:queue容器存放stack容器" << endl;test02();return 0;
}
#endif
STL12-queue容器相关推荐
- C++STL的queue容器
C++STL的queue容器 queue 基本概念 queue 常用接口 queue 基本概念 概念:Queue是一种先进先出(First In First Out,FIFO)的数据结构,它有两个出口 ...
- c++中的queue容器
queue容器 队列是一种容器适配器,专门用于在FIFO上下文(先进先出)中操作,其中从容器一端插入元素,另一端 提取元素. 队列作为容器适配器实现,容器适配器即将特定容器类封装作为其底层容器类,qu ...
- STL学习系列五:Queue容器
Queue简介 queue是队列容器,是一种"先进先出"的容器. queue是简单地装饰deque容器而成为另外的一种容器. #include <queue> 1.qu ...
- stack和queue容器
stack容器 stack是一种先进后出的数据结构,它只有一个出口 栈中只有顶端的元素才可以被外界使用,因此栈不允许有遍历行为 栈可以判断是否为空 empty() 栈可以返回元素个数 size() 入 ...
- C++之Queue容器初学
Queue简介 ² queue是队列容器,是一种"先进先出"的容器. ² queue是简单地装饰deque容器而成为另外的一种容器. ² #include <queue> ...
- queue容器常用接口
queue容器常用接口 元素先进先出 #include<iostream> using namespace std; #include<queue> #include<s ...
- C++编程入门之十二(queue容器)
queue队列容器 1.1queue基本概念 1.2queue常用接口 #include"pch.h" #include<iostream> #include<s ...
- [C++STL]C++实现queue容器适配器
代码如下: #include <iostream> #include <deque>using namespace std;template<typename T,typ ...
- 32-【什么叫规矩 什么叫体统】queue容器
/*queue 队列<----------------------- <--出队 <--入队------------------队头 队尾特性:1.先进先出2.只有队头队尾能被访问, ...
- [C++STL]queue容器用法介绍
最新文章
- 给你一天时间,如何理清AI圈儿现状?
- 看本地网速_安装 ANSYS 本地帮助
- 全球及中国橡胶行业盈利状况及十四五竞争前景展望报告2021版
- html网页缩小之后div框移动,css – DIV在浏览器中放大和缩小时移动
- 深度学习 训练吃显卡_在深度学习中喂饱GPU
- Android Intent基本使用
- ppt修复无法读取_移动硬盘故障分析以及建议修复方法
- velocity自定义函数_velocity基本语法和总结
- Apache 和 Tomcat 服务器的区别
- 什么浏览器好用_手机浏览器不只UC,好用的浏览器还有这些
- Zookeeper可视化工具PrettyZoo
- Cyclone IV FPGA 器件笔记
- 双十一的秒杀场景是如何设计的?
- SQL2K数据库开发七之表操作添加删除和修改列
- java 弹出另存为_java如何实现 io流传输过来的文件,提示另存为弹出窗口?
- 简单的避免idea自动导入 *
- 软件测试必学的16个高频数据库操作及命令
- vue项目中通过cdn引入资源并配置
- 字节日常实习生面试 无了~
- 招聘面试的STAR原则
热门文章
- linux电脑合盖后卡住了,解决ubuntu合盖后无法唤醒
- mysql partition 性能_通过分区(Partition)提升MySQL性能
- npoi word在试图打开文件时遇到错误_【技巧】word在试图打开文件时遇到错误
- BOM -- browser object model
- mysql 删除not null_从MySQL的列中删除NOT NULL限制?
- java in action,java 7 in action
- linux 内存规划,生产场景怎么对linux系统进行合理规划分区?
- java告警系统设计_告警系统的设计
- mysql 客户服务号_mysql客户端及服务端常用实用工具功能总结
- 单片机实验:节日彩灯控制器