C++(26): 标准库 <queue>
目录
1. 核心概念
2. 基本语法
3. 特点
4. 特有成员函数
5. 内存与性能
6. 示例代码
7. 成员函数列表
8. 使用场景
9. 注意事项
总结
1. 核心概念
队列(Queue) 是一种遵循 先进先出(FIFO) 原则的线性数据结构,只允许在队列尾部插入元素(入队),在队列头部删除元素(出队)。
-
容器适配器:
queue
是标准库中的容器适配器,基于其他容器(如deque
或list
)实现,默认使用deque
作为底层容器。 -
操作受限:与
deque
不同,queue
仅支持特定操作(如push
、pop
、front
),不支持随机访问或中间插入/删除。 -
应用场景:任务调度、广度优先搜索(BFS)、缓冲处理等需要严格 FIFO 的场景。
2. 基本语法
在 C++ 中,使用 <deque>
需要包含头文件 #include <queue>
。
std::queue<Type> q;Type
是队列中存储元素的数据类型。
#include <queue>// 声明与初始化
std::queue<int> q1; // 默认基于 deque 的空队列
std::queue<int, std::list<int>> q2; // 基于 list 的队列
std::deque<int> dq = {1, 2, 3};
std::queue<int> q3(dq); // 通过已有 deque 初始化
3. 特点
-
FIFO 特性:元素按插入顺序处理,队头元素总是最早被删除。
-
受限的操作接口:仅允许尾部插入 (
push
)、头部删除 (pop
)、查看队头/队尾元素 (front
/