欢迎来到天天文库
浏览记录
ID:56951378
大小:54.50 KB
页数:28页
时间:2020-07-28
《编程题5_2_虚基类.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、名称编程题5_2:虚基类备注描述图5.14(见教材p166)是一个多重继承的类继承关系示意图,各类的主要数据成员有说明,请自己定义合理的成员函数,编程实现该继承关系的程序,并定义一个在职研究生对象,先输入相关信息,再输出。关于数据成员:数据类Data:成员char*name,保存姓名;教师类Teacher:增加成员floatsal,保存工资;学生类Student:增加成员char*id,保存学号;研究生类Postgrad:增加成员char*dn,保存系别;教师中的在职研究生类Tpost:不另外定义成员。关于成员函数:各类定义输
2、出所有数据成员的函数voidprint()。提示:(1)为了简化编程,可将各数据成员的属性定义为protected;(2)本题与书上习题不完全一样,请注意输入、输出的格式。在保存并预览之后,点开:“测试用例”选项卡,再选择下方的“添加”,加入一组测试用例,该用例只有输出无输入第一个测试用例,输入部分:wu10001computer800<回车>输出部分:Theteacherandpostgraduate:name=wuid=10001dn=computersal=800<换行>第二个测试用例,输入部分:li10002math9
3、00<回车>输出部分:Theteacherandpostgraduate:name=liid=10002dn=mathsal=900<换行>参考源程序代码#include#includeusingnamespacestd;classData{public:Data(char*na){name=newchar[strlen(na)+1];strcpy(name,na);}~Data(){delete[]name;}voidprint(){cout<<"name="<4、rotected:char*name;};classStudent:virtualpublicData{参考源代码仅供老师参考,不要添加到系统中public:Student(char*na,char*pid):Data(na){id=newchar[strlen(pid)+1];strcpy(id,pid);}~Student(){delete[]id;}voidprint(){Data::print();cout<<"id="<5、alpublicData{public:Teacher(char*na,floatpsal):Data(na){sal=psal;}voidprint(){Data::print();cout<<"sal="<6、p)+1];strcpy(dn,p);}~Postgrad(){delete[]dn;}voidprint(){Student::print();cout<<"dn="<7、<<"sal="<>name>>id>>dn>>sal;Tposttpobj(name,id,dn,sal);cout<<"Theteacherandpostgraduate:"<8、用例请各位自己添加,题目的最后已有描述,每个题目也说明了要给几组测试用例(5)其他选项可以自行设定,例如开启时间,结束时间,等等,需要大家逐步熟悉---------------------------------------------------------------范文
4、rotected:char*name;};classStudent:virtualpublicData{参考源代码仅供老师参考,不要添加到系统中public:Student(char*na,char*pid):Data(na){id=newchar[strlen(pid)+1];strcpy(id,pid);}~Student(){delete[]id;}voidprint(){Data::print();cout<<"id="<5、alpublicData{public:Teacher(char*na,floatpsal):Data(na){sal=psal;}voidprint(){Data::print();cout<<"sal="<6、p)+1];strcpy(dn,p);}~Postgrad(){delete[]dn;}voidprint(){Student::print();cout<<"dn="<7、<<"sal="<>name>>id>>dn>>sal;Tposttpobj(name,id,dn,sal);cout<<"Theteacherandpostgraduate:"<8、用例请各位自己添加,题目的最后已有描述,每个题目也说明了要给几组测试用例(5)其他选项可以自行设定,例如开启时间,结束时间,等等,需要大家逐步熟悉---------------------------------------------------------------范文
5、alpublicData{public:Teacher(char*na,floatpsal):Data(na){sal=psal;}voidprint(){Data::print();cout<<"sal="<6、p)+1];strcpy(dn,p);}~Postgrad(){delete[]dn;}voidprint(){Student::print();cout<<"dn="<7、<<"sal="<>name>>id>>dn>>sal;Tposttpobj(name,id,dn,sal);cout<<"Theteacherandpostgraduate:"<8、用例请各位自己添加,题目的最后已有描述,每个题目也说明了要给几组测试用例(5)其他选项可以自行设定,例如开启时间,结束时间,等等,需要大家逐步熟悉---------------------------------------------------------------范文
6、p)+1];strcpy(dn,p);}~Postgrad(){delete[]dn;}voidprint(){Student::print();cout<<"dn="<7、<<"sal="<>name>>id>>dn>>sal;Tposttpobj(name,id,dn,sal);cout<<"Theteacherandpostgraduate:"<8、用例请各位自己添加,题目的最后已有描述,每个题目也说明了要给几组测试用例(5)其他选项可以自行设定,例如开启时间,结束时间,等等,需要大家逐步熟悉---------------------------------------------------------------范文
7、<<"sal="<>name>>id>>dn>>sal;Tposttpobj(name,id,dn,sal);cout<<"Theteacherandpostgraduate:"<8、用例请各位自己添加,题目的最后已有描述,每个题目也说明了要给几组测试用例(5)其他选项可以自行设定,例如开启时间,结束时间,等等,需要大家逐步熟悉---------------------------------------------------------------范文
8、用例请各位自己添加,题目的最后已有描述,每个题目也说明了要给几组测试用例(5)其他选项可以自行设定,例如开启时间,结束时间,等等,需要大家逐步熟悉---------------------------------------------------------------范文
此文档下载收益归作者所有