C++ C++;虚函数继承 #包括 甲级{ 公众: a(){}; 虚拟~a(){ std::cout
即使析构函数未被继承,如果基类声明其析构函数为虚拟,则派生的析构函数始终覆盖它。这使得通过指向基类的指针删除动态分配的多态类型对象成为可能C++ C++;虚函数继承 #包括 甲级{ 公众: a(){}; 虚拟~a(){ std::cout,c++,polymorphism,C++,Polymorphism,即使析构函数未被继承,如果基类声明其析构函数为虚拟,则派生的析构函数始终覆盖它。这使得通过指向基类的指针删除动态分配的多态类型对象成为可能 您可以在中找到更多信息,这是否回答了您的问题?是的,“虚拟性”,不仅在析构函数中是隐式派生的。@胡桃夹子不是,我说的更多的是为什么调用非虚拟和派生析构函数是有意义的。但无论如何,感谢您的资源! #include <iostream> class a{ public: a(){}; virtual ~a(){ std
您可以在中找到更多信息,这是否回答了您的问题?是的,“虚拟性”,不仅在析构函数中是隐式派生的。@胡桃夹子不是,我说的更多的是为什么调用非虚拟和派生析构函数是有意义的。但无论如何,感谢您的资源!
#include <iostream>
class a{
public:
a(){};
virtual ~a(){
std::cout << "del class a";
}
};
class b: public a{
public:
~b(){
std::cout << "del class b";
}
};
int main(){
a *pa;
pa = new b;
delete pa;
}