错误:"释放后使用包装器对象 (WRAPPER_ESCAPE)"

Error: “Wrapper object use after free (WRAPPER_ESCAPE)”

本文关键字:quot 对象 WRAPPER ESCAPE 释放 错误 包装      更新时间:2023-10-16
...
Object& a = list.front();
list.pop_front();
...

完成上述操作后,我需要使用 &a。但是覆盖性正在提高免费发行后的使用量。在执行 pop_front(( 后使用 &a 有问题吗?

Object& a = list.front();

您可以a引用列表的 front 元素。当您稍后弹出 front 元素时,它将被销毁,留下对不存在对象的引用。

您应该改为复制元素

Object a = list.front();

或者可能移动

Object a = std::move(list.front());