关于继承的几个误区

 

1. c++有三种继承方式,public ,protected ,private ,无论哪一种继承,子类都会把父类的所有的成员变量和成员函数给继承下来,只是对于不同的继承方式,父类的成员在子类中的可访问性不同而已

 

2.对于三种继承来说,继承下来的成员在子类中的访问控制符发生了变化(这会影响到继承于该子类的子类)

2.1.public 继承:父类的public和protected成员作为子类的成员时,保持不变,而父类的private成员在子类中是不可访问的

2.2 private继承:父类的public和protected成员作为子类的private成员,而父类的private成员在子类中是不可访问的

2.3 protected继承:父类的public和protected成员作为子类的protected成员,而父类的private成员在子类中是不可访问的

 

2.4对于继承下来的private成员,虽然是不可以访问的,但是子类仍然可以调用父类的函数来访问它们

 

3.类中的一个成员可以是private,protected或public

3.1 如果一个成员是private,它的名字将只能由其声明所在类的成员函数和友元使用

3.2 如果一个成员是protected,它的名字只能由其声明所在类的成员函数和友元,以及由该类的派生类的成员函数和友元使用

3.3 如果一个成员是public,它的名字可以由任何函数使用

3.4 这种访问控制被一致性地用于所有的名字,一个名字引用的是什么并不影响对它的使用控制

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值