这可能以前在 SO 上被问过,但我找不到类似的问题。
考虑以下类层次结构:
class BritneySpears
{
public:
virtual ~BritneySpears();
};
class Daughter1 : public BritneySpears
{
public:
virtual ~Daughter1(); // Virtual specifier
};
class Daughter2 : public BritneySpears
{
public:
~Daughter2(); // No virtual specifier
};
Daughter1
和Daughter2
类有区别吗?
virtual
在子类析构函数/方法上指定/不指定的后果是什么?