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;
}
相关推荐
再卷也是菜12 分钟前
C++篇(17)哈希拓展学习
c++·哈希
l1t15 分钟前
用SQL求解advent of code 2024年23题
数据库·sql·算法
“愿你如星辰如月”24 分钟前
Linux:进程间通信
linux·运维·服务器·c++·操作系统
10岁的博客43 分钟前
二维差分算法高效解靶场问题
java·服务器·算法
轻微的风格艾丝凡44 分钟前
锂电池 SOC 估计技术综述:成熟算法、新颖突破与车企应用实践
算法·汽车
Codeking__1 小时前
动态规划算法经典问题——01背包问题
算法·动态规划
R-G-B1 小时前
归并排序 (BM20 数组中的逆序对)
数据结构·算法·排序算法
少许极端1 小时前
算法奇妙屋(十二)-优先级队列(堆)
数据结构·算法·leetcode·优先级队列··图解算法
灵晔君1 小时前
C++标准模板库(STL)——list的模拟实现
c++·list
AI_56782 小时前
接口测试“零基础通关“:Postman从入门到自动化测试实战指南
开发语言·lua