c++
中有私有繼承和公有繼承之分。
通常我們使用公有繼承,以繼承父類中所有的成員變數和函式,但是,只有父類中被宣告為
private
以及protected
的成員變數和成員函式在子類中師可見的。而不是說子類只繼承父類中的公有成員。而那些在父類中的公有成員被繼承至子類後,仍然保持公有,除非我們顯式地將其宣告為私有。
如:private:
base::f;
base::h; 其中
f和h均為父類中的函式名。
當私有繼承時,仍然會繼承所有父類的血統。但是,從繼承來的所有成員(變數和函式),在子類中都變為私有。如:
class a
virtual ~a(){}
int geta() };
class b:private a };
int main(int argc,char* argv)
當然我們可以顯示地宣告被繼承的成員為公有。
如:public:
base::f;
base::h
C 公有繼承 私有繼承和保護繼承
在c 中有三種繼承方式 公有繼承 public 私有繼承 private 和保護繼承 protected 1.公有繼承 public 公有繼承 基類的公有成員和保護成員作為派生類的成員時,它們都保持原有的狀態,而基類的私有成員仍然是私有的,不能被這個派生類的子類所訪問。2.私有繼承 private ...
C 公有繼承,私有繼承和保護繼承
三種訪問許可權 public 可以被任意實體訪問 protected 只允許子類及本類的成員函式訪問 private 只允許本類的成員函式訪問 友元函式可以訪問這三種訪問許可權的成員 三種繼承方式 public 繼承 protect 繼承 private 繼承 組合結果 基類中 繼承方式 子類中 p...
c 公有繼承 保護繼承和私有繼承
c 中的繼承方式有 public private protected三種 它們直接影響到派生類的成員 及其物件對基類成員訪問的規則 1 public 公有繼承 繼承時保持基類中各成員屬性不變,並且基類中private成員被隱藏。派生類的成員只能訪問基類中的public protected成員,而不能...