當乙個類從另乙個類繼承時,子類能夠從父類繼承到的是父類的公有型別的成員屬性和成員方法,以及保護型別的成員屬性和成員方法。這些子類從父類繼承得到的屬性和方法,在子類中是什麼型別?
這個問題與派生類的定義有關,基類的說明前有public、protected和private進行說明,將從父類繼承來的屬性和方法定義為不同的型別。
如果基類是由public關鍵字說明,那麼派生類的物件能夠直接使用基類中定義的公有型別的成員屬性和成員方法,也就是基類中公有型別和方法也當做派生類的公有型別的變數來使用。而原來基類中的保護型別的屬性和方法,在派生類中,也當作保護型別的屬性和方法,對於這些保護型別的屬性和方法,也只能在自身內部使用。
如果基類是由private關鍵字來指定,那麼繼承來的屬性和方法,不管在父類中什麼型別,派生類都只能用作內部資料和處理過程,也就是說,在派生類中,所有繼承而來的屬性和方法都是私有型別的。
如果基類是由protected來進行說明的話,那麼子類從父類繼承而來的所有屬性和方法,將在子類中被當做保護型別的資料。
例1:子類由基類繼承時由關鍵字 public 說明
//子類由基類繼承時由關鍵字 public 說明
例2:子類由基類繼承時由關鍵字 private 說明
//子類由基類繼承時由關鍵字 private 說明
44 繼承中的訪問級別
外類不能直接訪問類的 private成員 子類不能直接訪問父類的私有成員 include include using namespace std class parent int value class child public parent int main int value class chi...
44 程式的鏈結方式
將程式的鏈結方式之前,我們先理清楚程式為什麼需要鏈結?首先先講一下在多道程式環境下,程式是併發執行的,程式的執行會建立乙個程序,建立程序的第一件事就是把程式的資料和 裝入記憶體。那麼怎麼把 和資料裝入記憶體呢?總的來說,這兩個圖總的講述了程式和資料裝入記憶體的流程。但是並不是所有順序都是這樣子的 靜...
C 4 4 多重繼承
定義 當乙個派生類具有兩個或多個基類時,這種派生方法成為多重繼承或多基類派生。語法形式 class 派生類名 繼承方式1 基類名1,繼承方式n 基類名n 示例 includeusing namespace std class x void visit 2 引數總表中包含完成所有基類初始化所需的引數個...