几年不碰C++,如今看来已路人。
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,这也就实现了曲线救国了。