5-19设计一个虚基类base,派生出leader类,engineer类,在由这两类派生出chairman类,彩用相关数据测试
来源:互联网 发布:lt18i刷ubuntu包 编辑:程序博客网 时间:2024/05/16 20:28
#include<iostream>
#include<string>
using namespace std;
class Base{
public:
Base(string name1, int age1, char sex1)
{
name = name1;
age = age1;
sex = sex1;
}
void show()
{
cout << "姓名:" <<name<<endl;
cout << "年龄:" <<age<<endl;
cout << "性别:" <<sex<<endl;
}
private:
string name;
int age;
char sex;
};
class leader :virtual public Base{
public:
leader(string name1, int age1, char sex1, string time1) :
Base(name1, age1, sex1)
{
time = time1;
}
void show()
{
leader::show();
cout << "工作时间:" << time << endl;
}
private:
string time;
};
class engineer :virtual public Base{
public:
engineer(string name1, int age1, char sex1, string experience1) :
Base(name1, age1, sex1)
{
experience = experience1;
}
void show()
{
engineer::show();
cout << "工作经验:" << experience << endl;
}
private:
string experience;
};
class chairman :public leader, public engineer{
public:
chairman(string name1, int age1, char sex1, string time1, string experience1, string score1):
Base(name1, age1, sex1), leader(name1, age1, sex1, time1), engineer(name1, age1, sex1, experience1)
{
score = score1;
}
void show()
{ Base::show();
leader::show();
engineer::show();
cout << "成绩:" <<score<< endl;
}
private:
string score;
};
int main()
{
chairman ch1("张三","58","男","10years","丰富","万达集团");
cout<<"请输出具体信息:"<<endl;
ch1.chairman::show();
return 0;
}
#include<string>
using namespace std;
class Base{
public:
Base(string name1, int age1, char sex1)
{
name = name1;
age = age1;
sex = sex1;
}
void show()
{
cout << "姓名:" <<name<<endl;
cout << "年龄:" <<age<<endl;
cout << "性别:" <<sex<<endl;
}
private:
string name;
int age;
char sex;
};
class leader :virtual public Base{
public:
leader(string name1, int age1, char sex1, string time1) :
Base(name1, age1, sex1)
{
time = time1;
}
void show()
{
leader::show();
cout << "工作时间:" << time << endl;
}
private:
string time;
};
class engineer :virtual public Base{
public:
engineer(string name1, int age1, char sex1, string experience1) :
Base(name1, age1, sex1)
{
experience = experience1;
}
void show()
{
engineer::show();
cout << "工作经验:" << experience << endl;
}
private:
string experience;
};
class chairman :public leader, public engineer{
public:
chairman(string name1, int age1, char sex1, string time1, string experience1, string score1):
Base(name1, age1, sex1), leader(name1, age1, sex1, time1), engineer(name1, age1, sex1, experience1)
{
score = score1;
}
void show()
{ Base::show();
leader::show();
engineer::show();
cout << "成绩:" <<score<< endl;
}
private:
string score;
};
int main()
{
chairman ch1("张三","58","男","10years","丰富","万达集团");
cout<<"请输出具体信息:"<<endl;
ch1.chairman::show();
return 0;
}
0 0
- 5-19设计一个虚基类base,派生出leader类,engineer类,在由这两类派生出chairman类,彩用相关数据测试
- [5.19]设计一个虚基类base,包含姓名和年龄私有数据成员以及相关的成员函数;由它派生出领导类leader,包含职务和部门私有数据成员以及相关的成员函数;再由base派生出工程师类engieer,
- 在程序中定义一个基类Person类,由这个基类派生出Teacher(教师)类和Leader(领导)类。采用多继承的方式由这两个类派生出Teacher_Leader类。并且满足以下要求:
- 设计一个“航空器”抽象类,由它派生出两个子类:“运输机”类和“客机”类
- 5.18设计一个基类,再派生出两个子类
- Chapter12——声明抽象基类Shape,由它派生出3个派生类:Circle,Rectangle,Triangle,用一个printArea函数分别输出以上三者的面积,3个图形的数据在定义对象时给
- CPerson派生出CEmployee类
- Circle派生出Cylinder类
- 由Shape派生出的抽象基类
- 点类派生出直线类,直线类派生出圆类
- C#--第四周实验--任务4--定义一个描述坐标点的CPoint类,派生出直线类Cline,在派生出矩形类CRect,实现一些功能。
- 【6.13】 定义基类Base,其数据成员为高h,定义成员函数disp为虚函数。然后再由High派生出长方体类Cuboid与圆柱体类Cylinder。并在两派生类中定义成员函数disp为虚函数。在主函
- 定义点类派生出直线类
- 点类派生出直线类
- Point类派生出Circle类
- 7.20在学生类student和教师类teacher 基础上再派生出一个助教类
- 写一个程序,定义抽象基类Shape,由它派生出3个派生类: Circle(圆形)、Rectangle(矩形)、Triangle(三角形)
- 第十周实验指导--任务1--由坐标点类派生出直线类--继承与派生
- 第九周项目二 Time类中的运算符重载(续)
- Java中 Collection 和 Collections
- linux下静态库和动态库详解
- 每个人都应该了解的HTTPS知识
- linux初始用户组和有效用户组
- 5-19设计一个虚基类base,派生出leader类,engineer类,在由这两类派生出chairman类,彩用相关数据测试
- 批评你的才是你生命中的贵人
- 你不知道的JavaScript演示代码Github地址
- TMS320C64x+ DSP-----Cache 优化
- CodeForces 151C Win or Freeze(简单题)
- 【SDOI2015】R2酱油记
- Mac 连接linux 方法和传文件工具
- JNI开发Can't load IA 32-bit .dll on a AMD 64-bit platform错误的解决
- 系统分析师今年考试第一题所属章节