2.*Copyright(c) 2016.烟台大学计算机与控制工程学院
3.*ALL rights reserved.
4.*文件名称:main.cpp
5.*作者:孙亚茹
6.*完成日期:2016年5月10日
7.*问题描述:阅读程序,写出执行结果
8.*/
#include <iostream>
using namespace std;
class A
{
public:
A(char *s){cout<<s<<endl;}
};
class B:public A
{
public:
B(char *s1, char *s2):A(s1){
cout<<s2<<endl;
}
};
class C:public A
{
public:
C(char *s1,char *s2):A(s1){
cout<<s2<<endl;
}
};
class D:public B, C
{
public:
D(char *s1,char *s2,char *s3,char *s4):
B(s1,s2),C(s3,s4){cout<<s4<<endl;}
};
int main()
{
D d("class A","class B","class C","class D");
return 0;
}
运行步骤:
B(s1,s2)先调用A类的构造函数,输出"class A",B类中再输出“class B",C(s3,s4)先调用A类的构造函数,输出"class C",C类中再输出"class D",最后再在D类中输出"class D",所以最后结果为:class A,class B,class C,class D,classD.