阅读量:0
多态基类的析构函数应该设计为虚析构函数。这样可以确保当派生类对象被删除时,会首先调用派生类的析构函数,再调用基类的析构函数,从而正确释放派生类对象的资源。示例代码如下:
class Base { public: virtual ~Base() {} }; class Derived : public Base { public: ~Derived() { // 清理派生类对象的资源 } };
在这个示例中,基类Base的析构函数被声明为虚析构函数,派生类Derived的析构函数负责清理派生类对象的资源。当Derived对象被删除时,会先调用Derived的析构函数,再调用Base的析构函数,确保资源正确释放。