由于析构函数不能被继承,因此在执行派生类的析构函数时,也要调用基类的析构函数。其执行顺序如下: 先调用派生类的析构函数 再调用派生类中子对象类的析构函数(如果派生类中有子对象) 再调用普通基类的析构函数 最后调用虚基类的析构函数 以下程序的运行结果是 1. constructing Base1 a=5 constructing Base2 b=7 constructing Base3 c=6 constructing Derivedclass d=8 destructing Derivedclass destructing Base1 destructing Base2 destructing Base3 2.constructing Base1 a=5 constructing Base2 b=7 constructing Base3 c=6 constructing Derivedclass d=8 destructing Derivedclass destructing Base3 destructing Base2 destructing Base1 //派生类析构函数的调用顺序。 #include
using namespace std; class Base1//基类 { public: Base1(int i)//基类构造函数 { a=i; cout<<"constructing Base1 a=" <
<