64,266
社区成员
发帖
与我相关
我的任务
分享
class CBase
{
public:
CBase() { cout << "CBase" << endl; }
virtual ~CBase() { cout << "~CBase" << endl;}
};
class CDerived : public CBase
{
public:
CDerived() { cout << "CDerived" << endl; }
~CDerived() { cout << "~CDerived" << endl; }
};
int main()
{
CBase base;
CBase* pBase = new CBase;
pBase = &base;
delete pBase; //运行时报错!
}
int main()
{
CBase base;
CBase* pBase = new CBase;
CBase* pBase2 = pBase; //至少也要有一个指针指向申请的空间
pBase = &base;
delete pBase2; //以便最后释放的是自己申请的那块内存。
} //运行时不再报错!