C++day6作业

1.思维导图

C++day6作业_第1张图片

2.编程题:

以下是一个简单的比喻,将多态概念与生活中的实际情况相联系:

比喻:动物园的讲解员和动物表演

想象一下你去了一家动物园,看到了许多不同种类的动物,如狮子、大象、猴子等。现在,动物园里有一位讲解员,他会为每种动物表演做简单的介绍。

在这个场景中,我们可以将动物比作是不同的类,而每种动物表演则是类中的函数。而讲解员则是一个基类,他可以根据每种动物的特点和表演,进行相应的介绍。

具体过程如下:

定义一个基类 Animal,其中有一个虛函数perform(),用于在子类中实现不同的表演行为。

解:

程序代码:

#include 

using namespace std;
class Animal//创建一个抽象类Animal,包含动物名字、种类、行为和年龄四个属性
{
protected:
    string name;//姓名
    string kind;//种类
    string act;//表演行为
    int age;//年龄
public:
    Animal(){}
    Animal(string name,string kind,string act,int age):name(name),kind(kind),act(act),age(age)
    {}

    virtual void perform()=0;//使用纯虚函数

};
class Lion:public Animal//创建派生类Lion,继承Animal类,增加性别属性
{
private:
    string sex;
public:
    Lion(){}
    Lion(string name,string kind,string act,int age,string sex):Animal(name,kind,act,age),sex(sex)
    {}

    void perform()// 对父类的成员函数重写
    {

        cout << "这是一只" << sex <perform();
    p=&s2;
    p->perform();
    p=&s3;
    p->perform();
    p=&s4;
    p->perform();
    return 0;
}

 代码截图:

C++day6作业_第2张图片

 运行结果:C++day6作业_第3张图片

 

你可能感兴趣的:(c++,开发语言)