读书人

C++对于释放对象的 有关问题

发布时间: 2012-08-29 08:40:14 作者: rapoo

C++对于释放对象的 问题
当从父类派生一个子类后,定义一个子类的对象时,它将依次调用父类的构造函数,当前类的构造函数来创建对象,在释放子类对象时,先调用的是当前类的析构函数,然后是父类的析构函数,
定义一个基类类型指针,调用子类的构造函数为其构建对象,当对象释放时,顺序是什么样的??

[解决办法]
如果基类的析构函数不是虚函数的话,只释放了基类的资源,这样派生类的资源就没释放,造成了内存的泄漏。如果基类的析构函数是虚函数的,就是先派生类后基类。在Effective C++的Item7有介绍。

读书人网 >C++

热点推荐