這可能以前曾被問過,但我無法找到類似的問題。我是否還需要在子類方法上指定虛擬?
考慮下面的類層次結構:
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
有什麼後果?
謝謝。
請注意讀者:也請看看C++ 11中的['override'](http://stackoverflow.com/questions/13880205/override-in-c11)關鍵字,它與那個話題。 – ereOn 2014-06-12 06:57:40