定义一个抽象类Animal,其有一个纯虚函数Speak;通过该类分别派生出两个类,一个Cat类,一个Dog类,这两个类分别对其Speak函数进行了重写。通过main函数测试并实现多态。
#include <iostream>
using namespace std;
class Animal{
public:
virtual void Speak()=0;
};
class Cat:public Animal{
public:
virtual void Speak(){
std::cout << "喵喵 喵喵!" << std::endl;
}
};
class Dog:public Animal{
public:
virtual void Speak(){
std::cout << "汪 汪汪!"<<std::endl;
}
};
int main()
{
Animal *cat = new Cat();
cat->Speak();
Animal *dog = new Dog();
dog->Speak();
return 0;
}