现在的位置: 首页 > 综合 > 正文

程序崩溃在delete某个对象时

2018年05月08日 ⁄ 综合 ⁄ 共 250字 ⁄ 字号 评论关闭

 记录一些bugs,以便在今后的面试或debug时使用。即使有天不coding了,也可把它当做记忆来回味。

A* a = new DerivedA();
if(0 != a){
	delete a; // crash!!!
}

delete 对象a时程序crash了,这是怎么回事呢?经过排查原来DerivedA内部的某个成员变量被delete了两次。这是哪个粗心的CPPER写的程序啊?
总结:不过这让我记住了程序在delete某个对象时crash,肯定是这个object或者这个object内部某些成员变量被第二次delete了。

抱歉!评论已关闭.