C++ 具有多个值的队列

标签 c++ data-structures

我正在寻找具有多个值的队列,但默认的 std::queue 仅支持两个值,例如

queue<int, int> myqueue;

我有八个元素,并且想要像这样的队列相同的功能(PUSH、POP 等)

queue<int, int, int, int, int, int, int, int> myqueue;

最佳答案

您没有正确使用队列。通过指定queue<int> ,您可以使用pushpop要插入任意数量的元素,另请参阅:http://en.cppreference.com/w/cpp/container/queue

如果您想要一个可以容纳 8 个元素的容器,您可能需要使用固定大小的 boost::circular_buffer: http://www.boost.org/doc/libs/1_52_0/libs/circular_buffer/doc/circular_buffer.html

如果你想一次推送8个元素,只需使用 std::vector作为队列项,或 8 元组 tuple<int, int, int, int, int, int, int, int>或具有数组成员的结构:struct EightInt { int data [8]; } .

关于C++ 具有多个值的队列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14332673/

相关文章:

c++ - 数字中设置的位数

c++ - 访问冲突 : Bad pointer

Python、列表+字典、类?

c++ - GCC avx2intrin.h(版本 X-9.2)中缺少 _mm_broadcastsd_pd

c++ - 使用 Clang 10 使用显式模板实例化 ~queue 的 undefined reference

c# - 实现平衡二叉搜索树?

algorithm - 如何在数据流中找到循环/重复?

algorithm - Frederickson堆选择算法简单解释

c++ - 类中类的动态数组

python - 如何在整个迭代中应用函数?