![](https://img-blog.csdn.net/20150514124209651?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvU2FrdXJhcmFpbjc3/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
#include<iostream>
#include<string>
using namespace std;
class base{
public:
base(string name1,int age1)
{
name=name1;
age=age1;
}
void print()
{
cout<<"姓名:"<<name<<endl;
cout<<"年龄:"<<age<<endl;
}
private:
string name;
int age;
};
class leader:virtual public base{
public:
leader(string name1,int age1,string post1,string dept1):base(name1,age1)
{
post=post1;
dept=dept1;
}
void print()
{
base::print();
cout<<"职务:"<<post<<endl;
cout<<"部门:"<<dept<<endl;
}
private:
string post;
string dept;
};
class engineer:virtual public base{
public:engineer(string name1,int age1,string pro_name1,string major1):base(name1,age1)
{
pro_name=pro_name1;
major=major1;
}
void print()
{
base::print();
cout<<"职称:"<<pro_name<<endl;
cout<<"专业:"<<major<<endl;
}
private:
string pro_name;
string major;
};
class chairman:public leader,public engineer{
public:chairman(string name1,int age1,string post1,string dept1,string pro_name1,string major1):
leader(name1,age1,post1,dept1),
engineer(name1,age1,pro_name1,major1),
base(name1,age1)
{}
void print()
{
leader::print();
engineer::print();
}
};
int main()
{
base a_base("张三",20);
cout<<"百姓:"<<endl;
a_base.print();
leader a_leader("李四",38,"主管","人事部");
cout<<"领导:"<<endl;
a_leader.print();
engineer a_engineer("王五",24,"UI工程师","信管");
cout<<"工程师:"<<endl;
a_engineer.print();
chairman a_chairman("周六",21,"主任","技术部","Java工程师","物联网");
cout<<"主任工程师:"<<endl;
a_chairman.print();
return 0;
}
<img src="https://img-blog.csdn.net/20150515230002305?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvU2FrdXJhcmFpbjc3/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />