请教一个问题:父类析构函数为非虚函数,子类为虚函数
#include <iostream>
using namespace std;
class Base
{
public:
~Base()
{
cout<<"~Base()"<<endl;
}
};
class ABase : public Base
{
public:
virtual ~ABase()
{
cout<<"~ABase()"<<endl;
}
};
int main(int argc, char* argv[])
{
ABase* p = new ABase;
Base *pBase = p;
std::cout << p << ", " << pBase << std::endl;
delete pBase;
return 0;
}
0036AB00, 0036AB04
~Base()
0x8051438, 0x8051438
~Base()