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

实现效果

相关推荐
青少儿编程课堂12 分钟前
图形化编程实战:智能交通灯调度台,一个作品讲透循环、条件与广播
c++·python·算法·bfs·信息学竞赛
l1t13 分钟前
DeepSeek总结的DuckDB 如何更快地运行递归 CTE
java·开发语言·数据库·mysql·duckdb
HAPPY酷14 分钟前
python的对象和方法
开发语言·python
evans在进步16 分钟前
LeetCode 438 找到字符串中所有字母异位词:滑动窗口与排序解法详解
算法·leetcode·职场和发展
赵民勇16 分钟前
C++无锁编程详解
c++
橙露19 分钟前
移动端客户端原生开发语言
开发语言
M78佐菲20 分钟前
Linux多线程:创建、回收与互斥同步
linux·笔记·学习·算法
醉颜凉21 分钟前
C++ 中野指针与悬挂指针的区别:从成因到防范,彻底讲清两种危险指针
c++
Demon--hx24 分钟前
设计不能被继承的类
开发语言·c++
小手cool25 分钟前
使用递归对数组进行反转操作
java·数据结构·算法