1
我有一個while循環,我想用一個std/boost算法替代(主要是爲了我的學習,沿着Sean Parent的no-raw-loops maxim的路線)。用std/boost算法替換C++ while循環
std::queue q;
while (! q.empty()) {
auto front = q.front();
q.pop();
do_stuff_with_front();
potentially_insert_more_into_q();
}
正如你所看到的,我有條件地在循環中排入更多的元素;認爲迷宮遍歷。什麼std/boost算法可能適合這個?
+ Afaik,所有的算法都使用迭代器,它們在插入時失效。您需要重新初始化每個插入的迭代器。 OP可以嘗試做一個這樣的抽象。 – Carcigenicate