幾年不碰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,這也就實現了曲線救國了。