定义一个抽象类Animal,其有一个纯虚函数Speak。

定义一个抽象类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;
}