8.12 C++作业

运用虚函数实现多态

cpp 复制代码
#include <iostream>

using namespace std;

class Animal
{
public:
    virtual void perform()=0;
    virtual ~Animal()
    {
        cout  << "释放父类空间" <<endl;

    }
};

class Monkey:public Animal
{
public:
    void perform()
    {
        cout << "猴子正在骑自行车" << endl;
    }
    ~Monkey()
    {
        cout << "释放子类空间" << endl;
    }
};
class Elepant:public Animal
{
public:
    void perform()
    {
        cout << "大象正在滚皮球" << endl;
    }
};
class Lion:public Animal
{
public:
    void perform()
    {
        cout << "狮子正在跳火圈" << endl;
    }
};
int main()
{
    Animal *p;
    Monkey s1;
    p=&s1;
    p->perform();
    Lion s2;
    p=&s2;
    p->perform();
    Elepant s3;
    p=&s3;
    p->perform();

    cout << "Hello World!" << endl;
    return 0;
}

实现效果

相关推荐
‎ദ്ദിᵔ.˛.ᵔ₎1 分钟前
STL 栈 队列
开发语言·c++
勿忘,瞬间7 分钟前
数据结构—顺序表
java·开发语言
张張40811 分钟前
(域格)环境搭建和编译
c语言·开发语言·python·ai
weixin_4235339915 分钟前
【Windows11离线安装anaconda、python、vscode】
开发语言·vscode·python
2401_8920709816 分钟前
【Linux C++ 日志系统实战】高性能文件写入 AppendFile 核心方法解析
linux·c++·日志系统·文件写对象
fzb5QsS1p17 分钟前
告别重复造轮子,Qt 快速开发脚手架
开发语言·qt·php
郭涤生19 分钟前
STL vector 扩容机制与自定义内存分配器设计分析
c++·算法
航Hang*19 分钟前
第3章:Linux系统安全管理——第2节:部署代理服务
linux·运维·服务器·开发语言·笔记·系统安全
周杰伦fans21 分钟前
C# required 关键字详解
开发语言·网络·c#
༾冬瓜大侠༿23 分钟前
vector
c语言·开发语言·数据结构·c++·算法