C++虚函数和多态

没有多态的不是真正的面向对象,是基于面向对象

  1. 几个概念

纯虚函数:没有实现,没有函数体。子类继承并实现。

抽象基类:拥有纯虚函数的类,不能构建对象,不能实例化。提供通用接口,用子类实现这些接口
派生类:继承自基类或父类

基类指针:基类对象
派生类指针:派生类对象

引用:类型名&
int a=12
int& r = a;
r=99
r引用了目标对象a,并修改了a的值

  1. 多态

多态语句:指向基类的指针,调用基类和派生类都有的同名虚函数
多态:派生类指针自动转化为基类指针,用一个指向基类的指针分别指向基类对象和派生类对象,两次调用。

  1. 多态表现形式

多态表现形式1
派生类的指针可以赋给基类指针
基类指针调用基类和派生类的同名虚函数时:如果指针指向基类对象,被调基类;如果指针指向派生类对象,被调派生类的虚函数。

多态表现形式2
派生类对象可以赋给基类引用
基类引用调用基类和派生类的同名虚函数时:如果引用引用的是基类对象,被调基类;如果引用引用的是派生类对象,被调派生类的虚函数。

  1. 多态作用

多态作用:面向对象设计中使用多态,增强程序可扩充性,程序需要修改或增加功能时,需要改动和增加的代码较少。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值