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;
}
相关推荐
庄小焱2 分钟前
【机器学习】——房屋销售价格预测实战
人工智能·算法·机器学习·预测模型
黎雁·泠崖2 分钟前
Java字符串高阶:底层原理深剖+经典面试题全解
java·开发语言
txzrxz7 分钟前
单调栈详解(含题目)
数据结构·c++·算法·前缀和·单调栈
清风~徐~来9 分钟前
【视频点播系统】环境搭建
开发语言
重生之我是Java开发战士10 分钟前
【Java SE】反射、枚举与Lambda表达式
java·开发语言
weixin_4365250712 分钟前
若依多租户版 - @ApiEncrypt, api接口加密
java·开发语言
superman超哥14 分钟前
序列化格式的灵活切换:Serde 生态的统一抽象力量
开发语言·rust·编程语言·rust serde·序列化格式·rust序列化格式
AI科技星20 分钟前
张祥前统一场论的数学表述与概念梳理:从几何公设到统一场方程
人工智能·线性代数·算法·机器学习·矩阵·数据挖掘
程序员-King.27 分钟前
day167—递归—二叉树的直径(LeetCode-543)
算法·leetcode·深度优先·递归
亲爱的非洲野猪30 分钟前
2动态规划进阶:背包问题详解与实战
算法·动态规划·代理模式