第十二周项目一 教师兼干部类(多重继承)
2015-05-24 12:39
555 查看
项目要求
分别定义Teacher(教师)类和Cadre(干部)类,采用多重继承方式由这两个类派生出新类Teacher_Cadre(教师兼干部)。要求:(1)在两个基类中都包含姓名、年龄、性别、地址、电话等数据成员。
(2)在Teacher类中还包含数据成员title(职称),在Cadre类中还包含数据成员post(职务),在Teacher_Cadre类中还包含数据成员wages(工资)。
(3)对两个基类中的姓名、年龄、性别、地址、电话等数据成员用相同的名字,在引用这些数据成员时,指定作用域。
(4)在类体中声明成员函数,在类外定义成员函数。
(5)在派生类Teacher_Cadre的成员函数show中调用Teacher类中的display函数,输出姓名、年龄、性别、职称、地址、电话,然后再用cout语句输出职务与工资。
代码如下
#include <iostream> using namespace std; class Teacher { public: Teacher(string,int,char,string,string,string); void display(); protected: string name; int age; char sex; string addr; string num; string title; }; Teacher::Teacher(string na,int ag,char s,string ad,string nu,string t) { name=na; age=ag; sex=s; addr=ad; num=nu; title=t; } void Teacher::display() { cout<<name<<endl<<age<<endl<<sex<<endl<<addr<<endl<<num<<endl<<title<<endl; } class Cadre { public: Cadre(string,int,char,string,string,string); void display(); protected: string name; int age; char sex; string addr; string num; string post; }; Cadre::Cadre(string na,int ag,char s,string ad,string nu,string p) { name=na; age=ag; sex=s; addr=ad; num=nu; post=p; } void Cadre::display() { cout<<name<<endl<<age<<endl<<sex<<endl<<addr<<endl<<num<<endl<<post<<endl; } class Teacher_Cadre:public Teacher,public Cadre { public: Teacher_Cadre(string na,int ag,char s,string ad,string nu,string p,string t,double w); void show(); private: double wages; }; Teacher_Cadre::Teacher_Cadre(string na,int ag,char s,string ad,string nu,string p,string t,double w): Teacher(na,ag,s,ad,nu,t),Cadre(na,ag,s,ad,nu,p),wages(w) {} void Teacher_Cadre::show() { Teacher::display();//!!之前写成了Teacher.display是不对的 cout<<Cadre::post<<endl;//!这里也不能写成Cadre.post cout<<wages<<endl; } int main() { Teacher_Cadre t_c("ZhangSan",25,'F',"Ytu","17862811234","Engineer","Chief",5000); t_c.show(); return 0; }
运行结果
学(hu)习(yan)心(luan)得(yu)
这两天Mary从南京过来了 玩嗨了 导致项目没发、院宣的PSD没完成、PS兴趣小组没更新、社会实践没参与新一步讨论QAQ
相关文章推荐
- 《C++第十二周实验报告2-1》--分别定义Teacher(教师)类和Cadre(干部采用多重继承方式由这两个类派生出新类Teacher_Cadre(教师兼干部)
- 第十三周项目二—多重继承教师干部类
- 第十二周项目一 教师干部的多继承
- 第十二周【项目1 - 教师兼干部类】
- 第十二周项目一——教师兼干部类
- 第十二周项目一--教师兼干部类
- 第十二周项目1 - 教师兼干部类
- 第十二周项目一--教师兼干部类
- 定义Person(人)类,由Person分别派生出Teacher(教师)类和Cadre(干部)类,再由Teacher(教师)类和Cadre(干部)类采用多重继承方式派生出新类TeacherCadre(
- 第十二周 课后实践:项目一——教师兼干部类
- 第十二周任务一(多重继承方式由这两个类派生出新类Teacher_Cadre(教师兼干部))
- 第十二周 阅读项目 多重继承中数据关系
- C++走向远洋——46(教师兼干部类、多重继承、派生)
- 第十二周 【项目1 - 教师兼干部类】
- 第11周项目4-教师兼干部类 (多重继承方式)
- 第十二周项目2-教师兼干部类
- 第十二周上机实践项目——教师兼干部类
- 第十二周项目1 - 教师兼干部类
- 第十二周 项目2--教师兼干部类
- 第十二周项目1——教师兼干部类