如何从队列插入到 2D 列表

How to insert from QUEUE to 2D LIST

本文关键字:2D 列表 插入 队列      更新时间:2023-10-16

我有一个非常基本的问题。如何从队列推送到列表。我几乎是从队列复制到列表。这是我的例子:

list<list<BoardingTicket>> boardPassenger(queue<BoardingTicket>& waitingLine){
list< list<BoardingTicket>> combinedList;
while(!waitingLine.empty()){
combinedList.push_back(waitingLine.front()); 
waitingLine.pop();
}
return combinedList;
}

这是更简单的方法还是我需要使用迭代器来完成。

提前感谢!

编辑:第4行(combinedList.push_back(waitingLine.front(((;)不行!

如果你想在std::queue<T>上使用迭代器,这是不可能的。它们没有迭代器。

如果您想使用列表的迭代器,但我认为push_back()更容易、更清晰。

使用以下方法

list<list<BoardingTicket>> boardPassenger(queue<BoardingTicket>& waitingLine){
list<BoardingTicket> combinedList;
while(!waitingLine.empty()){
combinedList.insert(combinedList.begin(), waitingLine.front());
waitingLine.pop();
}
return list<list<BoardingTicket>>{std::move(combinedList)};//#include<utility>
}