在C++中,析構函數在對象銷毀時被調用,用于執行清理工作
class Base {
public:
virtual ~Base() {
// 清理基類資源
}
};
class Derived : public Base {
public:
~Derived() override {
// 清理派生類資源
}
};
class Base {
public:
~Base() {
// 清理基類資源
}
};
class Derived : public Base {
public:
virtual ~Derived() override {
// 清理派生類資源
}
};
總之,在處理繼承關系時,確保基類有一個虛析構函數是非常重要的,這樣可以保證在通過基類指針刪除派生類對象時,派生類的析構函數會被正確調用,從而避免資源泄漏和其他潛在問題。