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