15.1.3
  1. /* 
  2.  *Copyright(c) 2016.烟台大学计算机与控制工程学院 
  3.  *ALL rights  reserved. 
  4.  *文件名称:text11.cpp 
  5.  *作者:孙超
  6.  *问题描述:分别定义Teacher(教师)类和Cadre(干部)类,采用多重 
  7.  *继承方式由这两个类派生出新类Teacher_Cadre(教师兼干部)。<pre class="cpp" name="code">(1)在两个基类中都包含姓名、年龄、性别、地址、电话等数据成员。  
  8. (2)在Teacher类中还包含数据成员title(职称),在Cadre类中还包含数据成员post(职务),在Teacher_Cadre类中还包含数据成员wages(工资)。  
  9. (3)对两个基类中的姓名、年龄、性别、地址、电话等数据成员用相同的名字,在引用这些数据成员时,指定作用域。  
  10. (4)在类体中声明成员函数,在类外定义成员函数。  
  11. (5)在派生类Teacher_Cadre的成员函数show中调用Teacher类中的display函数,输出姓名、年龄、性别、职称、地址、电话,然后再用cout语句输出职务与工资。 
  12.  */  
  13. #include <iostream>  
  14. using namespace std;  
  15. class Teacher  
  16. {  
  17. public:  
  18.     Teacher(string nam,int a,char s,string tit,string ad,string t): name(nam),age(a),sex(s),title(tit),adress(ad),number(t) { }  
  19.     void show();  
  20. protected:  
  21.     string name;  
  22.     int age;  
  23.     char sex;  
  24.     string adress;  
  25.     string number;  
  26.     string title;  
  27.   
  28. };  
  29. void Teacher::show()  
  30. {  
  31.     cout<<"name:"<<name<<endl;  
  32.     cout<<"age:"<<age<<endl;  
  33.     cout<<"sex:"<<sex<<endl;  
  34.     cout<<"address:"<<adress<<endl;  
  35.     cout<<"number:"<<number<<endl;  
  36.     cout<<"title:"<<title<<endl;  
  37.   
  38. }  
  39. class Cadre  
  40. {  
  41. public:  
  42.     Cadre(string nam,int a,char s,string p,string ad,string t):name(nam),age(a),sex(s),post(p),adress(ad),number(t) {}  
  43.     void show();  
  44. protected:  
  45.     string name;  
  46.     int age;  
  47.     char sex;  
  48.     string adress;  
  49.     string number;  
  50.     string post;  
  51.   
  52. };  
  53. void Cadre::show()  
  54. {  
  55.     cout<<"name:"<<name<<endl;  
  56.     cout<<"age:"<<age<<endl;  
  57.     cout<<"sex:"<<sex<<endl;  
  58.     cout<<"post:"<<post<<endl;  
  59.     cout<<"address:"<<adress<<endl;  
  60.     cout<<"number:"<<number<<endl;  
  61. };  
  62. class Teacher_Cadre:public Teacher,public Cadre  
  63. {  
  64.     public:  
  65.     Teacher_Cadre(string nam,int a,char s,string tit,string p,string ad,string t,float w);  
  66.     void show( );  
  67. private:  
  68.     float wage;  
  69. };  
  70. Teacher_Cadre::Teacher_Cadre(string nam,int a,char s,string t,string p,string ad,string tel,float w):  
  71.     Teacher(nam,a,s,t,ad,tel),Cadre(nam,a,s,p,ad,tel),wage(w) {}  
  72.   
  73. void Teacher_Cadre::show( )  
  74. {  
  75.     Teacher::show();  
  76.     cout<<"post:"<<Cadre::post<<endl;  
  77.     cout<<"wages:"<<wage<<endl;  
  78. }  
  79.   
  80. int main( )  
  81. {  
  82.     Teacher_Cadre te_ca("Wang-li",50,'f',"prof.","president","135 Beijing Road,Shanghai","(021)61234567",1534.5);  
  83.     te_ca.show( );  
  84.     return 0;  
  85. }  
阅读更多
想对作者说点什么? 我来说一句

DevExpress 15.1.5 with patch

2015年07月29日 171.66MB 下载

Devexpress15.1.5 破解工具

2015年09月06日 435KB 下载

DevExpress 15.1.3 源码 part2

2015年08月27日 50MB 下载

DevExpress v15.1 破解工具

2015年08月07日 441KB 下载

DevExpress 15.1.3 源码 part3

2015年08月27日 43.63MB 下载

DevExpress 15.1.3 源码 part1

2015年08月27日 50MB 下载

没有更多推荐了,返回首页

不良信息举报

15.1.3

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭