C 類中的3種訪問許可權和繼承方式

2022-02-20 14:09:02 字數 874 閱讀 7301

訪問許可權:public 可以被任意實體訪問,protected 只允許子類(無論什麼繼承方式)及本類的成員函式訪問,private 只允許本類的成員函式訪問。三種繼承方式分別是 public 繼承,protect 繼承,private 繼承。

示例程式如下:

#include #include using namespace std;

// 基類

class student

};// 派生類 - public繼承

class public_sub : public student

};// 派生類 - protected繼承

class protected_sub : protected student

};// 派生類 - private繼承

class private_sub : private student

};int main()

另外,繼承方式會改變從基類繼承的成員在派生類的訪問許可權:

1、public 繼承不改變基類成員的訪問許可權;

2、protected 繼承將基類中 public 成員變為子類的 protected 成員,其它成員的訪問許可權不變;

3、private 繼承使得基類所有成員在子類中的訪問許可權變為 private。

c++ 中為什麼要定義 public、protect、private 這三種訪問許可權?

有些我們需要給外面看的,也就是對外介面,那麼就是 public。如果我們不想讓別人知道內部的實現細節,那麼就是 private。如果我們不想讓別人知道,想讓自己的孩子什麼的知道(這裡涉及到繼承),那麼就可以作為 protected。

C 類的3種繼承方式

簡單地說下c 類的3種繼承方式,分別是public繼承,protected繼承,private繼承。最常用的還是public繼承。class預設的是private繼承,它的member如果沒寫許可權也是預設 private。struct則相反,預設的是public繼承。結合下面的圖示和 對c 的繼承...

C 類的3種繼承方式

簡單地說下c 類的3種繼承方式,分別是public繼承,protected繼承,private繼承。最常用的還是public繼承。class預設的是private繼承,它的member如果沒寫許可權也是預設 private。struct則相反,預設的是public繼承。結合下面的圖示和 對c 的繼承...

C 類的繼承 訪問許可權 虛繼承

今天突然發現自己關於類的繼承,虛基類,訪問許可權混在在一起的時候有有一些模糊,所以今天進行重新學習一下。如果錯誤或者不對的地方,還請指教。一 類的繼承方式 類有三種成員成員,private,protected,public,基類的成員 派生方式 子類訪問特性 public protected pri...