我如何打印队列
How do I print a queue?
我试图在下面打印一个queue
。我尝试了创建温度queue
并写入其中的想法,然后写回。
但是它不起作用。
或我在这里缺少什么?
for(int i = 1; i<myQueue.size(); i++)
{
queue<int> tempQueue;
cout << myQueue.front() << endl;
MytempQueue.push(myQueue.front());
myQueue.pop();
myQueue.push(myTempQueue.back());
}
我的队列是queue<int> myQueue;
本质上,我想在不清空的情况下打印此queue
。但是我被困在这里。
没有有效的方法来执行此*。但是您可以执行以下操作:
- 制作队列的副本。
- 迭代副本,打印正面,然后弹出。
例如:
#include <queue>
#include <iostream>
void print_queue(std::queue<int> q)
{
while (!q.empty())
{
std::cout << q.front() << " ";
q.pop();
}
std::cout << std::endl;
}
int main()
{
std::queue<int> q;
for (auto i : {1,2,3,7,4,9,7,2,4}) q.push(i);
print_queue(q);
}
*使用继承有一个黑客。std::queue
具有受保护的成员C
,它是持有数据的基础容器。您可以从std::queue
继承并添加方法使用C
进行打印。但是,您必须完全意识到从不一定为此设计的类型继承的含义。
for(int i = 1; i&lt; myqueue.size(); i )
循环应从0开始,或者检查条件应为&lt; =
queue<int> myQueue;
myQueue.push(1);
myQueue.push(2);
myQueue.push(3);
myQueue.push(4);
myQueue.push(5);
for (size_t i = 0; i < myQueue.size(); i++)
{
cout << myQueue.front() << endl;
myQueue.push(myQueue.front());
myQueue.pop();
}
相关文章:
- 如何循环打印顶点结构
- 为什么在popback()操作之后,它仍然打印完整的矢量
- 打印优先级队列
- 使用 <list> (错误 C2760) 打印队列的元素
- 在C++中打印对的优先级队列的所有值时出现问题
- 从 STL 优先级队列C++ (QtCreator) 打印结构
- 复制的队列更改 打印临时队列后队列的头部指针指向空 队列
- 使用队列和列表 STL 进行C++分配。在将数据填充到列表或队列中然后打印该数据时遇到问题
- 队列快速排序不排序和打印随机字符串[C ]
- 打印队列元素的队列
- 为什么此代码无法打印队列中的所有值
- 我如何打印队列
- 尝试将队列打印为数组
- 按特定顺序打印队列
- 如何从FIFO队列阵列打印
- 如何打印队列的内容
- C++ 反向打印队列,而不使用堆栈或双向链表
- 以线程安全的方式每秒打印队列的当前元素数
- c++改变打印队列所有者
- c++-打印队列中的所有节点