C++ Day8

在这里插入图片描述只需要同名就能触发shadow

overload 重载发生在同一个作用域 函数名相同,参数列表不同(个数 类型 顺序) 希望发生的

shadow 发生在父子类中,只要函数名相同,即可构成shadow 不希望发生,确实同名,则加作用域限定也就是 类名::

继承方式

在这里插入图片描述类内部的 public protected private 影响访问权限
继承中 public protected private 父类中的成员在子类中的访问权限
不影响子类现有成员访问方式

  1. 在子类中
  2. 在子类对象中

99%的情况下只使用public继承方式
在这里插入图片描述![在这里插入图片描述](https://img-blog.csdnimg.cn/004089abc49647418c194c02eeef10c7.png

在这里插入图片描述

public 提供接口用的
protected 隐藏数据用的,传承数据
private 隐藏数据用的

继承方式总结
public 传承接口,传承数据
protected 只传承数据
private 既没有传承接口,也没有传承数据

继承的时候用public 最大限度得继承接口和数据

私有继承和保护继承 只在公司内有意义 防止公用接口扩散

多继承

多继承很多时候带来麻烦

👇三个的地址一样,但是他们的类型不一样的
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
多继承:
1.出现冗余信息,给调用者带来不便
2.要解决的问题, 1 实现Z类中数据只有一份, 2 数据访问便利

提取相同数据到一个公共类M中去,然后让被提取公因式的类分别虚继承自公共类M
class M:虚基类 虚继承
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值