设计一个动物园程序,有两个类:动物类 Animal 和鸟类 Bird。其中,动物类包含公有属性 name 和 age,以及虚函数 show();鸟类继承自动物类,包含公有属性 wing_length,以及实现 show() 函数,打印出鸟的基本信息和
时间: 2023-06-06 18:06:29 浏览: 170
翅膀长度。请问如何实现这样一个程序?
非常感谢您的问题!根据您的描述,我们可以定义一个动物类 Animal 和一个鸟类 Bird。动物类包含公有属性 name 和 age,并且定义了一个虚函数 show()。鸟类继承自动物类,并包含公有属性 wing_length,实现了基类中的虚函数 show(),打印出了鸟的基本信息和翅膀长度。以下是程序的示例代码:
```
#include<iostream>
using namespace std;
class Animal {
public:
string name;
int age;
virtual void show() {
cout << "Name: " << name << endl << "Age: " << age << endl;
}
};
class Bird : public Animal {
public:
int wing_length;
void show() {
cout << "Name: " << name << endl << "Age: " << age << endl;
cout << "Wing length: " << wing_length << " cm" << endl;
}
};
int main() {
Animal animal;
Bird bird;
animal.name = "Tiger";
animal.age = 5;
animal.show();
bird.name = "Sparrow";
bird.age = 1;
bird.wing_length = 10;
bird.show();
return 0;
}
```
运行结果如下:
```
Name: Tiger
Age: 5
Name: Sparrow
Age: 1
Wing length: 10 cm
```
希望这个程序对您有所帮助!如有疑问,请随时联系我。
阅读全文