C++面像对象之多态

一、多态的概念

        多态(Polymorphism)是面向对象编程的一个重要特性,它允许使用基类的指针或引用调用派生类的函数,实现不同对象对同一消息的不同响应。多态性使得程序具有更好的可扩展性和可维护性,能够根据对象的实际类型来调用相应的函数,而不是根据指针或引用的类型。

(1)多态分为两类

  • 静态多态:函数重载 和 运算符重载属于静态多态,复用函数名
  • 动态多态:派生类 和 虚函数实现运行时的多态

(2)静态多态与动态多态的区别

  • 静态多态的函数 地址早绑定 编译阶段确定函数地址重载
  • 动态多态的函数 地址晚绑定 运行阶段确定函数地址重写:和虚函数完全一样 < 返回值类型 函数名 参数列表 >
//格式
class Base{
public:
    virtual void functionName(){//虚函数
                    //基类实现
    }
    virtual ~Base() {} //虚析构函数
}; 

二、基本语法

1、基类语法

        基类定义:使用虚函数声明允许子类重写。

class Base {
public:
    virtual void show(){
        cout << "基类显示" << endl;
    }
}

2、派生类重写

派生类重写:使用 override 关键字(可选) 实现方法重写。

当然也可以在重写的函

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值