❤️C++的继承

***********************************************

❤️C++的三种继承方式:     public  protected  private

※public  是把父类的所有属性和方法都完整的继承过来

※private  是把父类的所有属性和方法都继承过来 并且都变成private

※protected  是把父类的所有属性和方法都继承过来 并且把public都变成protected,另两种不变



*************************************************

❤️虚函数

※重写基类函数  必须重新声明

※在子类中重写的方法中 调用父类的被重写的方法  直接用 父类类名::方法 调用


※父类的指针指向子类的对象  调用方法的时候  调用的时父类的方法(谁指向调用谁的)

如果用virtual修饰   则调用的时候就会调用子类的方法(对象是谁调用谁的)


※this指对象自己


*************************************************

❤️多继承

C++支持多继承    Objective-C/Java 均不支持多继承

class CGodness : private CGenius, public CAngel 


两个父类是由顺序的


强转类型 会进行换算  可能两个值不相等

*************************************************

❤️虚基类

菱形继承

class CGenus : virtual public CPerson

class CAngel : virtual public CPerson

class CGodness : private CAngel, public CGenius

在派生的时候 加上virtual  就能保证多继承的person 在派生下去的时候只有一份

如果不加的话  godness就会出现有两个person类

*************************************************


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值