- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
c实验8继承与派生上机练习题
定义一个哺乳动物类Mammal,并从中派生出一个狗类Dog,下面给出Mammal类的定义,要求:
添加Dog类的颜色数据成员,访问属性为私有,通过SetColor和GetColor成员函数来对颜色进行设置和获取。
分别为基类和派生类添加相应的构造函数(有参、无参)和析构函数,并进行测试。
class Mammal
{
protected:
int itsAge;
int itsWeight;
public:
int GetAge(){return itsAge;}
void SetAge(int age) {itsAge=age;}
int GetWeight() { return itsWeight;}
void SetWeight(int weight) {itsWeight= weight;}
};
class Dog : public Mammal
{
//定义Dog类的数据成员和成员函数
};
改:
#include iostream.h
#include string
using namespace std;
class Mammal
{
protected:
int itsAge;
int itsWeight;
public:
Mammal();
~Mammal();
int GetAge(){return itsAge;}
void SetAge(int age) {itsAge=age;}
int GetWeight() { return itsWeight;}
void SetWeight(int weight) {itsWeight= weight;}
};
class Dog : public Mammal
{
protected:
char itscolor[20];
public:
Dog();
void Setcolor(char *color) {strcpy(itscolor,color);}
void getcolor(){cout狗的颜色itscolorendl;}
//定义Dog类的数据成员和成员函数
};
////////////////////////
Mammal::Mammal()
{
int age1,weight1;
cout请输入动物的年龄:endl;
cinage1;
SetAge(age1);
cout请输入动物的体重:endl;
cinweight1;
SetWeight(weight1);
}
Mammal::~Mammal()
{
coutDestructor called.endl;
}
Dog::Dog()
{char color[20];
cout请输入狗的颜色:endl;
cincolor;Setcolor(color);
cout狗的颜色itscolor体重GetWeight()年龄GetAge()endl;
}
void main()
{
Dog dog1;
}
(4)设计人员基类Person。其成员包括:
数据成员:姓名(字符数组)、性别(字符数组)和年龄(整型)
成员函数:SetPerson,设置人员数据函数;
DisplayPerson,显示人员数据函数;
设计派生类1:Teacher,派生于Person。新增成员包括:
数据成员:职称(字符数组)、教研室(字符数组)和所授课程(字符数组)
成员函数:SetTeacher,设置数据成员函数;
DisplayTeacher,显示数据成员函数;
设计派生类2:Student,派生于Person。新增成员包括:
数据成员:专业(字符数组)、班级(字符数组)和类别(int)
其中类别取值:1(本科生)、2(硕士生)、3(博士生)
成员函数:SetStudent,设置数据成员函数;
DisplayStudent,显示数据成员函数;
设计派生类3:PostDoctor(博士后),多重继承于Student与Teacher。新增成员包括:
数据成员:无
成员函数:SetPostDoctor,设置数据成员函数;
DisplayPostDoctor,显示数据成员函数;
主函数:
输入并输出一个教师、一个本科生、一个博士后数据。
#include iostream.h
#include string
using namespace std;
#define n 20
////////////类的定义
class Person
{
protected:
char name[n];
char sex[n];
int age;
public:
Person();
void setperson();
void displayperson();
};
clas
您可能关注的文档
最近下载
- 2025高考数学冲刺复习:立体几何与空间向量(试卷+答案解析).pdf VIP
- 侵犯名誉权与隐私权的法律规定与应对策略.pptx VIP
- 武汉体育学院专业技术职务量化评审办法试行.doc VIP
- 网络侵权培训课件案例.pptx VIP
- 2023-2024学年广东省珠海市凤凰中学八年级(上)竞赛物理试卷(附答案解析).docx VIP
- 2025年东海中学八年级物理竞赛试卷及答案.doc VIP
- EN 50530-2010+A1-2013 并网光伏逆变器的整体效率.pdf VIP
- 初三化学上册第四单元自然界的水各节习题.doc VIP
- 武汉体育学院教师专业技术职务任职资格申报评审条件【参考】.doc VIP
- 初中数学专题:一次函数背景下的动点问题(含答案).docx VIP
文档评论(0)