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 );
}
相关推荐
思麟呀几秒前
在C++基础上理解CSharp-1
开发语言·c++·c#
一念春风5 分钟前
QwenPaw(替代小龙虾)大模型
开发语言·php
小短腿的代码世界11 分钟前
Qt状态机框架深度解析:从状态图到事件驱动闭环
开发语言·qt
学习,学习,在学习12 分钟前
Q工控仪器程序框架设计详解(工控)
c++·qt·架构·qt5
j7~15 分钟前
【Linux系统】基础IO(文件描述)(1)
linux·服务器·c++·文件·基础io
广州灵眸科技有限公司18 分钟前
瑞芯微(EASY EAI)RV1126B 模型部署API说明
linux·开发语言·网络·人工智能·深度学习·算法·yolo
计算机安禾20 分钟前
【c++面向对象编程】第20篇:override与final关键字:现代C++对继承的控制
开发语言·c++
AI科技星21 分钟前
全域数学:从理论到现实的终极落地全记录 光速不变公理(v=c)+ 可见派维度常数公理(D_v=3)统一广义相对论与量子力学,解决物理学百年难题
c语言·开发语言
ch.ju23 分钟前
Java程序设计(第3版)第三章——数组的定义方式
java·开发语言
郝学胜-神的一滴23 分钟前
Qt 高级开发 004: 三大窗口类深度解析
开发语言·c++·qt·程序人生·系统架构