C++基础 -25- 动态多态

静态多态在程序编译的时候,确定将要执行的状态。

动态多态在程序运行的时候,才能确定执行的状态。

下面举例实现动态多态

work函数接口通过传参不同做不同的工作

cpp 复制代码
#include "iostream"


using namespace std;

class person
{
    public:
    person()
    {

    }

    virtual void work()
    {
        cout << "没有工作" << endl;
    }
};

class police:public::person
{
    public:
    police()
    {

    }

    void work()
    {
        cout << "抓小偷" << endl;
    }
};

class nurse:public::person
{
    public:
    nurse()
    {

    }

    void work()
    {
        cout << "照顾病人" << endl;
    }
};

void work(person &a)
{
    a.work();
};


int main()
{
    nurse c;
    police cc;
    work( c );
    work( cc );
}
相关推荐
@小码农10 小时前
2026年3月Scratch图形化编程等级考试一级真题试卷
开发语言·数据结构·c++·算法
这儿有一堆花10 小时前
住宅代理(Residential Proxy)技术指南
开发语言·数据库·php
一只大袋鼠10 小时前
Java进阶:CGLIB动态代理解析
java·开发语言
秦ぅ时10 小时前
保姆级教程|OpenAI tts-1-hd模型调用全流程(Python+curl+懒人用法)
开发语言·python
Eiceblue10 小时前
使用 C# 将 Excel 转换为 Markdown 表格(含批量转换示例)
开发语言·c#·excel
爱滑雪的码农10 小时前
Java基础十三:Java中的继承、重写(Override)与重载(Overload)详解
java·开发语言
Java面试题总结10 小时前
使用 Python 设置 Excel 数据验证
开发语言·python·excel
【 】42311 小时前
C++&STL(Standard Template Library,标准模板库)
java·开发语言·c++
eastyuxiao11 小时前
OpenClaw 自动处理核心逻辑
开发语言·人工智能
小郑加油11 小时前
python学习Day10天:列表进阶 + 内置函数 + 代码简化
开发语言·python·学习