5月8日十二周实验报告(二)采用多重继承派生新的类
2012-05-08 20:01
471 查看
/* (程序头部注释开始)
* 程序的版权和版本声明部分
* Copyright (c) 2012, 烟台大学计算机学院学生
* All rights reserved.
* 文件名称:采用多重继承派生新的类
* 作 者: 晁阳
* 完成日期: 2012 年 5 月 8 日
* 版 本 号: t1.0
* 对任务及求解方法的描述部分
* 输入描述: 采用多重继承派生新的类
*代码实现:
* 程序的版权和版本声明部分
* Copyright (c) 2012, 烟台大学计算机学院学生
* All rights reserved.
* 文件名称:采用多重继承派生新的类
* 作 者: 晁阳
* 完成日期: 2012 年 5 月 8 日
* 版 本 号: t1.0
* 对任务及求解方法的描述部分
* 输入描述: 采用多重继承派生新的类
*代码实现:
#include < iostream > #include < string > using namespace std; class Teacher { public: Teacher( string nam,int a,char s,string tit,string ad,string t);//声明构造函数 void display();//声明输出函数 protected: string name; int age; char sex; string title; string addr; string tel; }; Teacher::Teacher( string nam,int a,char s,string tit,string ad,string t)//定义构造函数 { name = nam; age = a; sex = s; title = tit; addr = ad; tel = t; }; void Teacher::display() { cout << "name:" <<name<<endl; cout << "age:" <<age<<endl; cout << "sex:" <<sex<<endl; cout << "title:" <<title<<endl; cout << "address:" <<addr<<endl; cout << "tel:" <<tel<<endl; } class Cadre { public: Cadre(string nam,int a , char s, string p, string ad, string t); void display(); protected: string name; int age; char sex; string post; string addr; string tel; }; Cadre::Cadre( string nam, int a,char s,string p,string ad,string t) { name = nam; age = a; sex = s; post = p; addr = ad; tel = t; } void Cadre::display() { cout << "name:" <<name<<endl; cout << "age:" <<age<<endl; cout << "sex:" <<sex<<endl; cout << "post:" <<post<<endl; cout << "address:" <<addr<<endl; cout << "tel:" <<tel<<endl; } class Person:public Teacher,public Cadre { public: Person(string nam,int a , char s, string t, string p, string ad,string tel,float w); void show(); protected: float wage; }; Person::Person(string nam,int a , char s, string t, string p, string ad,string tel,float w):Teacher(nam,a,s,t,ad,tel),Cadre(nam,a,s,p,ad,tel),wage(w){} void Person::show() { Teacher::display(); cout << "post" <<post<<endl; cout << "wage" <<wage<<endl; } int main() { Person person1("wang-li",50,'f',"prof","president","135 Beijing Road,Shanghai","(021)61234567",65); person1.show(); system("pause"); return 0; } 上机体会:一个简单的程序却将所学的知识用了大部分,同时也看到可多重继承在实际生活中的简单应用。学以致用才用学的有积极性,更重要的是细心,细心!
相关文章推荐
- 《C++第十二周实验报告2-1》--分别定义Teacher(教师)类和Cadre(干部采用多重继承方式由这两个类派生出新类Teacher_Cadre(教师兼干部)
- 定义Person(人)类,由Person分别派生出Teacher(教师)类和Cadre(干部)类,再由Teacher(教师)类和Cadre(干部)类采用多重继承方式派生出新类TeacherCadre(
- 第十周实验报告(二)继承和派生
- 第十二周实验指导--任务2--分别定义Teacher(教师)类和Cadre(干部)类,采用多重继承方式由这两个类派生出新类Teacher_Cadre(教师兼干部)
- 《第十二周任务二》分别定义Teacher(教师)类和Cadre(干部)类,采用多重继承方式由这两个类派生出新类Teacher_Cadre
- 第十二周实验报告(任务二)【多重继承】
- 第十二周实验报告2(多重继承)
- 十二周实验报告任务1 理解基类中成员的访问限定符和派生类的继承方式。
- 定义Person(人)类,由Person分别派生出Teacher(教师)类和Cadre(干部)类,再由Teacher(教师)类和Cadre(干部)类采用多重继承方式派生出新类TeacherCadre(
- 定义Staff(员工)类,由Staff分别派生出Saleman(销售员)类和Manager(经理)类,再由Saleman(销售员)类和Manager(经理)类采用多重继承方式派生出新类SaleMana
- 第十周实验报告任务1 由坐标点类派生出直线类
- 十二周实验报告一
- C++第十二周【任务2】定义Teacher(教师)类和Cadre(干部)类,采用多重继承方式由这两个类派生出新类Teacher_Cadre(教师兼干部)。
- 第11周C++上机报告(点与直线,继承与派生)
- 第十三周--项目2-采用多重继承方式由Teacher类和Cadre类派生出Teacher_Cadre
- 十二周实验报告任务 3 设计一个在下面一段类的定义中,自行车类的虚基类也为车辆类,摩托车类的基类为自行车类和机动车类
- 第十三周 项目二:定义Teacher(教师)类和Cadre(干部)类,采用多重继承方式,派生出Teacher_Cadre(教师兼干部)类
- Chapter11——分别声明Teacher(教师类)和Cadre(干部)类,采用多重继承方式由这两个类派生出新类Teacher_Cadre(教师兼干部)类。
- C++第四次实验-----继承和派生
- 第十二周实验报告4