请问这个C++程序输出的结果是什么。主要是想搞清楚这几个函数中构造函数以及析构函数执行的先后顺序。

如题所述

第1个回答  推荐于2016-07-24
构造函数是,先父类后子类。
析构函数与之相反。

多继承,按照定义的先后顺序,进行构造。按照与之相反的顺序析构。

定义D
1. 先构造C
1.1 先构造A: cout<<classA
1.2 构造C: cout<<classC

2. 再构造B
2.1 先构造A: count<<classA
2.2 构造B: count<<classB
3. 构造D
cout<<classD;

析构:
先析构D
1. cout<<~classD
2. 先析构B cout<<~classB
3. 再析构B继承的A cout<<~classA
4. 析构C cout<<~class C
5. 析构C继承的A count<<~classA追问

很清楚!一看就懂了,谢谢

追答

客气

本回答被提问者采纳
相似回答