7-2 宠物的生长(多态) (10 分)

该博客介绍了如何使用C++设计一个管理宠物生长状态的系统,涉及多态概念。通过一个基类Pet和两个派生类Cat、Dog,实现了不同类型的宠物每天身长和体重的增长。主函数利用基类Pet指针数组动态创建对象,并通过虚函数显示目标日期的宠物信息。博客内容包含了动态数据分配和内存释放的注意事项。
摘要由CSDN通过智能技术生成

现在要开发一个系统,对宠物的生长状态进行管理。

给出下面的一个基类框架

class Pet

{

protected:

string name;//姓名

int length;//身长

int weight;//体重

int current;//当前日期

public:

virtual void display(int day)=0;//输出目标日期的身长和体重

Pet(string name, int l, int w, int c);

}

以Pet为基类,构建出Cat和Dog两个类:

Cat一天身长加1,体重加2。

Dog一天身长加2,体重加1。

生成上述类并编写主函数,要求主函数中有一个基类Pet指针数组,数组元素不超过10个。

Pet *pt[10];

主函数根据输入的信息,相应建立Cat类对象或Dog类对象,并给出目标日期宠物的身长和体重。

提示:应用虚函数实现多态

输入格式:

每个测试用例占一行,每行给出宠物的基本信息,第一个为当前宠物的类型:1为Cat,2为Dog。接下来为它的名字,随后的两个数字为身长和体重,最后为测身长和体重的日期(不大于10的正整数)。最后一行为目标日期(大于10的正整数)

输出格式:

输出目标日期宠物姓名、身长和体重

输入样例:

1 Marry 22 12 5
2 Jack 10 9 9
1 Jim 11 8 6
11<
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值