c++派生类析构函数
时间: 2024-01-31 09:10:26 浏览: 115
派生类的析构函数在派生类对象释放时进行清理工作。与一般类的析构函数相同,派生类的析构函数也没有返回类型和参数。派生类无法继承基类的析构函数,因此需要自己定义析构函数。
以下是一个示例,展示了派生类析构函数的定义方式:
```cpp
#include <iostream>
class Base {
public:
Base() {
std::cout << "Base constructor" << std::endl;
}
~Base() {
std::cout << "Base destructor" << std::endl;
}
};
class Derived : public Base {
public:
Derived() {
std::cout << "Derived constructor" << std::endl;
}
~Derived() {
std::cout << "Derived destructor" << std::endl;
}
};
int main() {
Derived derivedObj;
return 0;
}
```
输出结果为:
```
Base constructor
Derived constructor
Derived destructor
Base destructor
```
在这个示例中,派生类`Derived`继承了基类`Base`的析构函数,并在自己的析构函数中添加了额外的清理工作。当派生类对象`derivedObj`被创建和销毁时,会依次调用基类和派生类的构造函数和析构函数。
阅读全文