用c加加写一个同时包含继承和多态的代码
时间: 2023-05-13 16:05:12 浏览: 132
以下是一个同时包含继承和多态的C++代码示例:
```
#include <iostream>
using namespace std;
class Animal {
public:
virtual void makeSound() {
cout << "This is an animal sound." << endl;
}
};
class Cat : public Animal {
public:
void makeSound() {
cout << "Meow!" << endl;
}
};
class Dog : public Animal {
public:
void makeSound() {
cout << "Woof!" << endl;
}
};
int main() {
Animal* animal1 = new Cat();
Animal* animal2 = new Dog();
animal1->makeSound();
animal2->makeSound();
delete animal1;
delete animal2;
return 0;
}
```
这个程序定义了一个 Animal 类,它有一个虚函数 makeSound(),然后定义了两个派生类 Cat 和 Dog,它们都重写了 makeSound() 函数。在 main() 函数中,我们创建了一个指向 Cat 对象和一个指向 Dog 对象的 Animal 指针,然后调用它们的 makeSound() 函数,这就是多态的体现。最后别忘了释放内存。
阅读全文