c++内置的队列函数
时间: 2024-10-01 19:11:03 浏览: 20
C++ 标准模板库 (STL) 提供了多种容器用于数据结构,其中包括队列(queue),它是线程安全的数据结构,支持先进先出 (FIFO) 的原则。`<queue>`头文件包含了队列的实现,主要有两种类型:
1. `std::queue`: 非模板版本,适用于固定类型的元素。例如,`std::queue<int>`用于存储整数。
2. `std::queue<T>`: 模板版本,其中T是任意类型。这是更通用的选择,因为它可以适应不同类型的数据。
队列的基本操作包括:
- `push()`: 在队尾添加元素。
- `pop()`: 删除并返回队首元素,如果队列为空则抛异常。
- `front()`: 返回队首元素,但不删除它(仅查看)。
- `back()`: 返回队尾元素,但不删除它(仅查看)。
- `empty()`: 检查队列是否为空。
- `size()`: 获取队列中元素的数量。
下面是一个基本的使用示例:
```cpp
#include <iostream>
#include <queue>
int main() {
std::queue<int> q;
q.push(1);
q.push(2);
q.push(3);
std::cout << "Front element: " << q.front() << "\n"; // 输出 1
q.pop();
std::cout << "After pop: Front element is " << q.front() << "\n"; // 输出 2
while (!q.empty()) { // 只要队列非空就继续弹出元素
std::cout << q.pop() << " ";
}
std::cout << "\n";
return 0;
}
```
阅读全文