第5章的5.19
来源:互联网 发布:ubuntu wine qq 乱码 编辑:程序博客网 时间:2024/05/16 04:34
作业内容:
设计一个虚基类Base,然后由它派生出两个 leader和engieer类,之后再由派生出的两个类派生出一个chairman类。
个人看法:
在派生类缀上基类的构造函数时,一定要注意参数的个数是否一致。
# include <iostream>
# include <string>using namespace std;
class base{
public:
base(string name1,int age1,int exp1)
{
name=name1;
age=age1;
exp=exp1;
}
void showprint()
{
cout<<"姓名"<<" "<<name<<endl;
cout<<"年龄"<<" "<<age<<endl;
cout<<"在职年数"<<" "<<exp<<endl;
}
private:
string name;
int age;
int exp;
};
class leader:virtual public base{
public:
leader(string name1,int age1,int exp1,string post1,string work1):base(name1,age1,exp1)
{
post=post1;
work=work1;}
void print()
{
cout<<"职务"<<" "<<post<<endl;
cout<<"部门"<<" "<<work<<endl;
}
private:
string post;
string work;
};
class engieer:virtual public base{
public:
engieer(string name1,int age1,int exp1,string title1,string major1):base(name1,age1,exp1)
{
title=title1;
major=major1;
}
void print()
{
cout<<"职称"<<" "<<title<<endl;
cout<<"专业"<<" "<<major<<endl;
}
private:
string title;
string major;
};
class chairman:public leader,public engieer{
public:
chairman(string name1,int age1,int exp1,string post1,string work1,string title1,string major1)
:base(name1,age1,exp1),leader(name1, age1, exp1, post1,work1),engieer( name1, age1, exp1, title1, major1)
{}
void print()
{
base::showprint();
leader::print();
engieer::print();
}
};
int main()
{
chairman a("都敏俊",404,404,"利用超能力拯救女主","KMT184.05星球","大学讲师","生物学");
a.print();
return 0;
}
0 0
- 第5章的5.19
- 第5章的5.18
- sony的故事 第 5 章
- 痛苦的第5、6章
- 第5章部分作业的参考答案
- 第5章 进程的通信
- 一个程序员的进化史-第5章
- 第5章 Python连接器的例子
- 第5章 Cucumber的Tags
- 第5章 类之间的关系
- 第5章 继承的概念
- 第4章第1节练习题5 二叉树查找第k个结点的值
- Android攻城狮的第二门课(第3季)第5章 四大组件之BroadcastReceiver
- 第2章第5题
- 第2章 第5题
- 第3章 第5题
- 第4章 第5题
- 第5章 第1题
- 迷宫
- 11572 - Unique Snowflakes
- 黑马程序员--集合框架:List、Set和Map体系
- 文章标题
- linux 下打开eclipse报错(A Java RunTime Environment (JRE) or)
- 第5章的5.19
- Django学习笔记(4):Django模板系统(上)
- 收集遇到的问题
- 通过函数调用对字符串数组进行各种排序
- 我和opencv 序
- Linux驱动学习书籍推荐
- window下ubuntu12.04双系统的安装
- Django学习笔记(2):Django视图和URL
- 展开收起特效