在vs2010中,调用析构函数后,该对象的虚函数指针,会指向基类的虚函数表。
比如:
class TBase
{
public:
virtual void TT(){printf(__FUNCTION__"\n");};
}
class TChild : public TBase
{
public:
virtual void TT(){printf(__FUNCTION__"\n");};
}
main()
{
TChild tt;
tt.TT();
tt.~TT();
tt.TT();
}
打印结果是:
TBase::TT
TChild::TT
比如:
class TBase
{
public:
virtual void TT(){printf(__FUNCTION__"\n");};
}
class TChild : public TBase
{
public:
virtual void TT(){printf(__FUNCTION__"\n");};
}
main()
{
TChild tt;
tt.TT();
tt.~TT();
tt.TT();
}
打印结果是:
TBase::TT
TChild::TT