"queue"允许的基础容器
The allowed underlying container for a "queue"
本文关键字:queue 更新时间:2023-10-16
队列允许的底层容器是什么?
的语法:
queue<int, list<int> > q;
是唯一允许的列表吗?(list, deque, vector)
谢谢!
c++ 11 N3485§23.6.3.1/1说:
可以是任何支持front()、back()、push_back()和pop_front()操作的序列容器用于实例化队列。具体来说,可以使用list(23.3.5)和deque(23.3.3)。
因此,只要它是一个序列容器并具有适当的成员函数,它就可以工作。然而,操作被委托给底层容器,所以当有性能要求时应该记住这一点。
相关文章:
- 为什么这个 std::queue/指向结构的指针列表直到 List.Size() == 0 才释放内存?
- 将参数打包的参数传递到 std::queue 中,以便稍后使用不同的函数调用
- C++ queue.front();为什么不从第一个元素开始呢?
- 我可以擦除 std::queue 中间的节点吗?
- 获取大小时是否必须锁定 std::queue?
- 为什么我会收到"invalid conversion from 'Queue*/Stack*' to 'int'"错误消息?
- 销毁 std::queue 会导致内存错误
- 如何将一个 std::queue 的内容附加到另一个
- 使用元素加载 std::queue<uint8_t*> 的更有效方法?
- 为什么 std::queue 没有实现 insert() 而 std::d eque 实现了?
- 带有 std::vector 和 std::queue 的 Prim's 算法,我的代码有什么问题?
- C++程序在 #include 时无法编译<stack>,#include<queue>
- 是boost :: lockfree :: Queue(在多线程程序中)可锁定
- std :: queue :: pop()在其std :: unique_ptr数据上操作
- 通过 std::queue 中的元素的值获取元素的索引
- 如何索引指向数组 [queue] 的指针数组
- 像std::queue这样的c++标准库容器是否保证是可重入的
- 在 boost::lockfree:queue 默认构造函数的情况下断言失败
- 将元素推入 std::queue 时避免复制
- 连接两个C 文件(list.cc and queue.cc)困难