关于派生类析构函数的问题
有两个类:
class A
{
virtual void termclass();
private
virtual ~B;
}
void A::termclass()
{
printf("A is end");
}
class B:A
{
virtual void termclass();
private
virtual ~B;
}
void B::termclass()
{
printf("B is end");
}
由于B是A的派生类,所以B退出时除了调用自己的析构函数外,还要调用A的析构函数
于是我再A的析构函数中加入
this->termclass()
来试图在A或B的实例退出时实现多态,即是A的实例退出时调用A的termclass方法,B的实例退出时调用B的termclass方法.
但是最后运行是,不管A还是B的实例退出时都是返回的“A is end”
应该来说this是指向的当前的对象,通过虚汗数应该实现多态,但没有实现是什么原因拉?
通过上述问题我主要是想实现让B的父类A的实例退出时能调某个函数释放某些资源,而当B退出时不作这项工作,望指点