class A
{
public:
A(...) {...}
virtual ~A() {...}
private:
// may contains data
};
class B : public A
{
public:
B(...) {...}
private:
// contains no data
};
class C : public B
{
public:
C(...) {...}
~C() {...}
private:
// may contains data
};
正如你所看到的,class A
是基類,所以我們必須提供一個實現的虛析構函數。我們應該爲中間繼承類提供默認實現:
問題>我們是否必須爲具體的class B
提供默認析構函數? class B
本身不需要實現自定義的析構函數來釋放任何已分配的資源。
謝謝
號<多餘的字符,使極限> – 2012-07-27 14:42:53