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;
}

实现效果

相关推荐
仰泳的熊猫几秒前
1077 Kuchiguse
数据结构·c++·算法·pat考试
云栖梦泽5 分钟前
鸿蒙数据持久化实战:构建本地存储与云同步系统
开发语言·鸿蒙系统
wjs202411 分钟前
《Ionic 侧栏菜单》
开发语言
祁思妙想12 分钟前
linux常用命令
开发语言·python
LYFlied23 分钟前
【每日算法】LeetCode 19. 删除链表的倒数第 N 个结点
算法·leetcode·链表
踏浪无痕26 分钟前
计算机算钱为什么会算错?怎么解决?
后端·算法·面试
IMPYLH34 分钟前
Lua 的 IO (输入/输出)模块
开发语言·笔记·后端·lua
普通网友35 分钟前
Objective-C 类的方法重载与重写:区别与正确使用场景
开发语言·ios·objective-c
夏乌_Wx37 分钟前
练题100天——DAY28:找消失的数字+分发饼干
数据结构·算法
喵了meme44 分钟前
C语言实战6
c语言·开发语言