<分区>
我有过这样的经历,STL pop 函数不返回任何东西。
如何返回栈顶元素并将其删除?
top 函数不是一个好的解决方案,因为它只返回顶部元素的引用...
<分区>
我有过这样的经历,STL pop 函数不返回任何东西。
如何返回栈顶元素并将其删除?
top 函数不是一个好的解决方案,因为它只返回顶部元素的引用...
最佳答案
如果弹出后不再需要该元素
// use element with
container.top();
// remove it
container.pop();
否则复制对象:
Element e = container.top();
container.pop(); // remove it
// feel free to use e, you made a copy of it
如果您真的需要手动删除
它,那么您没有使用任何类型的智能指针,这会将问题转移到另一个主题。
关于C++ STL pop 不返回,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23552830/