Я хочу отобразить содержимое очереди в C ++, поэтому я решил скопировать очередь во временную, а затем отобразить элементы новой очереди повторяющихся операций pop. Но следующий код показывает вывод только тогда, когда я использую цикл for
.
#include<iostream>
#include<queue>
using namespace std;
int main()
{
queue<int> Q;
queue<int> dump = Q;
Q.push(1);
Q.push(2);
Q.push(3);
Q.push(4);
// for (dump = Q; !dump.empty(); dump.pop()) //THIS WORKS
// cout << dump.front() << '\n';
while(!dump.empty()) //THIS DOES NOT
{
cout << dump.front() << '\n';
dump.pop();
}
}