[11.12] 当我写派生类的析构函数时,需要显式调用基类的析构函数吗?
不!永远不需要显式调用析构函数(除了定位放置 new的情况)。
派生类的析构函数(不论你是否显式地定义了)自动调用基类子对象的析构函数。基类在成员对象之后被析构。在多重继承的情况下,直接基类以出现在继承列表中的顺序的反序被析构。
[11.13] 当析构函数检测到错误时,可以抛出异常吗?
C++的规则是你绝对不可以在另一个异常的被称为“栈展开(stack unwinding)”的过程中时,从析构函数抛出异常
不!永远不需要显式调用析构函数(除了定位放置 new的情况)。
派生类的析构函数(不论你是否显式地定义了)自动调用基类子对象的析构函数。基类在成员对象之后被析构。在多重继承的情况下,直接基类以出现在继承列表中的顺序的反序被析构。
C++的规则是你绝对不可以在另一个异常的被称为“栈展开(stack unwinding)”的过程中时,从析构函数抛出异常