析构函数为什么是虚函数 为什么基类的析构函数定义为虚函数?
为什么基类的析构函数定义为虚函数?我们经常使用基类指针指向派生类对象,然后通过delete基类指针删除派生类对象。此时,为了确保派生类对象可以被完全析构函数,我们自然需要基类析构函数是一个虚函数。这样
为什么基类的析构函数定义为虚函数?
我们经常使用基类指针指向派生类对象,然后通过delete基类指针删除派生类对象。此时,为了确保派生类对象可以被完全析构函数,我们自然需要基类析构函数是一个虚函数。这样,在删除的时候会调用派生类析构函数,否则只调用基类析构函数,派生类不能完全析构函数出来的部分。