C++访问权限-继承-继承方式

几年不碰C++,如今看来已路人。


C++访问权限-继承-继承方式_第1张图片
故乡的月亮

C++是我的入门语言,编程处女地就是给了她,但我明显没有耕耘好,那个时候不知道是真的没有天分,还是说太贪玩,一个星期七天,至少有6天都是在篮球场上,从来就没有正眼看过我的专业学习,不过也不后悔,毕竟是去打球了,而不是去作奸犯科了,那个时候打球能早上打到晚上,就不知道疲倦,想想也不算浪费青春。

访问权限

C++是Object-oriented的语言,也就是所谓的面向对象的语言,其中最重要的时候就是类,C++类里面的成员的访问权限有三种,public、private、protected,这三者在class内部都能相互访问,但是能被对象(类的实例)调用的只有public修饰的成员。

继承

C++里面的继承,不管你是什么继承方式,派生类都继承基类的所有非private成员,这些被继承的非private成员能在派生类内部任意相互访问

继承方式

但是那些被继承下来的成员,能否被对象(类的实例)调用(须知实例只能调用类里面的public成员),还得看继承方式,因为继承方式改变了这些被继承下来的成员的访问权限,public继承不改变继承下来的成员的访问属性,原来在基类里面是啥访问属性,在派生类里面还是啥访问属性;而private继承将所有继承下来的成员的访问属性一律改为private;至于protected继承,则是将继承下来的成员一律改为protected属性(原来是portected属性的不变,是public属性的改为protected,所以可以说是都改为了protected),如果你想访问派生下来的非public成员,那么你可以在派生类里写个函数做个中转,因为在派生类里面你可以访问非public成员啊,然后将你的中转函数作为public,这也就实现了曲线救国了。

你可能感兴趣的:(C++访问权限-继承-继承方式)