C++ 如何打印队列?
我正在尝试打印下面的队列。我曾经尝试过创建一个临时队列并写入其中,然后再将其写回 但它不起作用 或者我在这里错过了什么C++ 如何打印队列?,c++,stl,queue,C++,Stl,Queue,我正在尝试打印下面的队列。我曾经尝试过创建一个临时队列并写入其中,然后再将其写回 但它不起作用 或者我在这里错过了什么 for(int i=1;i没有有效的方法来执行此操作*。但您可以执行以下操作: 复制队列 在副本上迭代,打印正面,然后弹出它 比如说, #include <queue> #include <iostream> void print_queue(std::queue q) { while (!q.empty()) { std::cout
for(int i=1;i没有有效的方法来执行此操作*。但您可以执行以下操作:
复制队列
在副本上迭代,打印正面,然后弹出它
比如说,
#include <queue>
#include <iostream>
void print_queue(std::queue 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);
}
#包括
#包括
无效打印队列(标准::队列q)
{
而(!q.empty())
{
std::cout我如何复制队列?这就是我试图做的。伪代码帮助会很棒!queue copy=myQueue;
@user3398034既有a又有an@user3398034我添加了一个示例如果你有像queue这样的自定义类类型,那么我们可以使用q.front().yourMethod()要获取或设置值,请给出提示:如果在代码中打印是一项频繁而重要的操作,那么对于数据类型来说,队列可能是错误的选择,最好使用不同类型的容器。