国内设计好的网站案例,网站开发总结文档,电商培训基地,免费建网站系统思维导图 .编程题#xff1a; 以下是一个简单的比喻#xff0c;将多态概念与生活中的实际情况相联系#xff1a;比喻#xff1a;动物园的讲解员和动物表演 想象一下你去了一家动物园#xff0c;看到了许多不同种类的动物#xff0c;如狮子、大象、猴子等。现在#xff0…思维导图 .编程题 以下是一个简单的比喻将多态概念与生活中的实际情况相联系比喻动物园的讲解员和动物表演 想象一下你去了一家动物园看到了许多不同种类的动物如狮子、大象、猴子等。现在动物园里有一位讲解员他会为每种动物表演做简单的介绍。 在这个场景中我们可以将动物比作是不同的类而海种动物表演则是类中的函数。而讲解员则是一个基类他可以根据每种动物的特点和表演进行相应的个绍。具体过程致如下 定义一个基类Animal,其中有一个虚函数perform(O,用于在子类中实现不同的表演行为。
#include iostreamusing namespace std;
//封装一个Animal类
class Animal
{
public://公共属性Animal(){}//无参构造函数virtual void perform(){}//虚函数用于在子类中实现不同的表演行为
};
//封装一个Dog类公共继承于Animal类
class Dog:public Animal
{
public://私有属性string name;
public://公共属性Dog(){}//无参构造函数Dog(string n):name(n){}//有参构造函数void perform()//Dog的表演行为{cout name 汪汪汪汪汪汪汪汪汪汪 endl;}
};
//封装一个Cat类公共继承于Animal类
class Cat:public Animal
{
public://私有属性string name;
public://公共属性Cat(){}//无参构造函数Cat(string n):name(n){}//有参构造函数void perform()//Cat的表演行为{cout name 喵喵喵喵喵喵喵 endl;}
};int main()
{//分别用子类类实例化出对象Dog dog(狗);Cat cat(猫);//用基类类定义出l、e两个指针指向子类Animal *l,*e;ldog;ecat;//讲解员开始让动物们表演叫声行为l-perform();e-perform();return 0;
}