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 );
}
相关推荐
S1998_1997111609•X2 分钟前
MacOS/ˉsh(so.))os.apkair/AI
开发语言·网络·人工智能
SimpleLearingAI3 分钟前
C++虚函数详解
开发语言·c++
Dxy123931021621 分钟前
Python使用XPath定位元素:动态计算与函数调用
开发语言·python
小柯博客25 分钟前
STM32MP2安全启动技术深度解析
c语言·c++·stm32·嵌入式硬件·安全·开源·github
cpp_250133 分钟前
P1832 A+B Problem(再升级)
数据结构·c++·算法·动态规划·题解·洛谷·背包dp
Evand J34 分钟前
【MATLAB代码介绍】三种CT模型的IMM(交互式多模型)对目标高精度定位
开发语言·matlab·ct·imm·交互式多模型·多模型·转弯
AC赳赳老秦37 分钟前
OpenClaw权限管理实操:团队共享Agent,设置操作权限,保障数据安全
服务器·开发语言·前端·javascript·excel·deepseek·openclaw
geovindu1 小时前
go: Proxy Pattern
开发语言·后端·设计模式·golang·代理模式
langsiming1 小时前
【无标题】
java·开发语言·数据库
꧁细听勿语情꧂1 小时前
合并两个有序表、判断链表的回文结构、相交链表、环的链表一和二
c语言·开发语言·数据结构·算法