如何判断一个对象是否能够delete?

来源:百度知道 编辑:UC知道 时间:2024/05/26 16:03:06
Class A{
public:
A *p;
A(){
}
~A(){
delete p;
}
};

如果没有初始化p,去delete p就会报内存异常。我想要在如果p被初始化过,
那就在析构函数里释放它,如果没有初始化过,就不去delete 这个p;
2楼的骗子。强烈建议百度封了他的号

Class A{
public:
A *p;
A(){
p = NULL;
}
~A(){
if(p != NULL)
delete p;
}
};

C++是无法自动做到这点的。你可以加一个变量,如int a,初始为0,若对对象初始化后说赋为1,你看这样行不行。