root->addChild(lsn2.gRoot);
root->removeChild(lsn2.gRoot);
root->addChild(lsn2.gRoot);
上面的代码第三句会出错,因为第二节remove操作执行之后lsn2.gRoot已经被析构,不存在。需要new重新生成
本文通过一个简单的C++示例代码展示了在使用addChild和removeChild方法管理对象时可能遇到的问题。当一个对象被删除后再次尝试添加已删除的对象会导致程序错误。文章强调了正确管理内存的重要性,并提醒开发者在进行对象操作时需确保对象的有效性。
root->addChild(lsn2.gRoot);
root->removeChild(lsn2.gRoot);
root->addChild(lsn2.gRoot);
上面的代码第三句会出错,因为第二节remove操作执行之后lsn2.gRoot已经被析构,不存在。需要new重新生成
1186

被折叠的 条评论
为什么被折叠?