删除 std::priority_queue
中的元素并在之后弹出它是否安全,或者弹出是否尝试对引用做任何事情而不是丢弃它?
while(!priority_queue.empty()){
delete priority_queue.top();
priority_queue.pop();
}
最佳答案
在 OP 澄清说队列不包含任何指针,只包含对象之后:
您根本不必调用delete
。只需在您的 while 循环中调用 pop()
即可。容器处理释放。
关于c++ - 从 C++ priority_queue 释放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55298682/