class_18:多态

cpp 复制代码
#include <iostream>

using namespace std;

class RemoteCon{
public:
    virtual void openUtils()
    {
        cout<<"base:open "<<endl;
    }
};

class TvRemoteCon:public RemoteCon{
public:
    void openUtils () override
    {
        cout<<"TV open "<<endl;
    }
};

class LightCon:public RemoteCon{
public:
    void openUtils () override
    {
        cout<<"Light open "<<endl;
    }
};

void test(RemoteCon &base)
{
    base.openUtils();
}
int main()
{
    //父类的指针指向子类的对象
    RemoteCon *r = new TvRemoteCon;
    r->openUtils();

    RemoteCon *r1 = new LightCon;
    r1->openUtils();

    //父类的引用指向子类的对象
    TvRemoteCon tv;
    test(tv);//RemoteCon &base = tv
    return 0;
}
相关推荐
m0_603888711 天前
Scaling Trends for Multi-Hop Contextual Reasoning in Mid-Scale Language Models
人工智能·算法·ai·语言模型·论文速览
Good_Starry1 天前
Java——正则表达式
java·开发语言·正则表达式
Xの哲學1 天前
Linux io_uring 深度剖析: 重新定义高性能I/O的架构革命
linux·服务器·网络·算法·边缘计算
二哈喇子!1 天前
前端HTML、CSS、JS、VUE 汇总
开发语言·前端
scx201310041 天前
20260105 莫队总结
c++
comli_cn1 天前
残差链接(Residual Connection)
人工智能·算法
欧洵.1 天前
Java.基于UDP协议的核心内容
java·开发语言·udp
情缘晓梦.1 天前
C语言数据存储
c语言·开发语言
xunyan62341 天前
第九章 JAVA常用类
java·开发语言
Aaron15881 天前
基于VU13P在人工智能高速接口传输上的应用浅析
人工智能·算法·fpga开发·硬件架构·信息与通信·信号处理·基带工程