用C++写一个程序,定义两个类Cat和Dog,都继承于Animal,并重载Identify函数,不但要显示动物的种类,还要显示动物的名字。
时间: 2024-12-15 16:20:29 浏览: 1
在C++中,我们可以创建一个名为`Animal`的基类,然后分别定义`Cat`和`Dog`作为它的派生类,并重写基类中的`Identify`函数。这里是一个简单的示例:
```cpp
#include <iostream>
using namespace std;
// 定义基类 Animal
class Animal {
public:
virtual void Identify() {
cout << "这是一个动物" << endl;
}
};
// 定义 Cat 类,继承自 Animal
class Cat : public Animal {
private:
string name; // 存储猫的名字
public:
Cat(string name) : name(name) {} // 构造函数
// 重写 Identify 函数,显示猫的信息
override void Identify() override {
cout << "这是一只名为 " << name << " 的猫" << endl;
}
};
// 定义 Dog 类,继承自 Animal
class Dog : public Animal {
private:
string name;
public:
Dog(string name) : name(name) {} // 构造函数
// 重写 Identify 函数,显示狗的信息
override void Identify() override {
cout << "这是一只名为 " << name << " 的狗" << endl;
}
};
int main() {
// 创建 Cat 和 Dog 对象并调用 Identify 函数
Cat cat("花花");
cat.Identify();
Dog dog("旺财");
dog.Identify();
return 0;
}
```
在这个程序中,当实例化`Cat`或`Dog`对象并调用`Identify`函数时,会根据不同类的特性显示出对应的动物名称。
阅读全文