pop_back() 在 std::list 中返回值?

pop_back() return value in std::list?

本文关键字:list 返回值 std back pop      更新时间:2023-10-16

我很困惑,pop_back(( std::list 方法没有返回值,但是我如何从某个列表中获取值并将其存储在另一个列表中,例如整数列表?

我认为这很容易,但我不熟悉C++,我试图找到解决方案,但也许在这里我可以得到有关如何做到这一点的具体答案。

pop_back(( 返回对已删除元素的引用是不可取的,因为引用将立即指向无效元素。如果要将构造列表的最后一个元素复制到另一个元素,然后从第一个列表中删除该元素,则可以使用以下代码。如果你不需要删除该元素,只需省略对 std::list::p op_back(( 的调用。

std::list<int> firstList{1, 2, 3, 4, 5, 6};
std::list<int> secondList{1, 2, 3, 4};
secondList.push_back(firstList.back()); //the 6 from firstList has now been copied to secondList
firstList.pop_back(); //the 6 from firstList has now been removed