C 類訪問控制及繼承

2021-07-13 04:15:01 字數 1135 閱讀 9387

一、c++類的訪問控制有三類:public,protected和private。

類訪問控制符

類成員可被哪些物件訪問

public

1、類的成員函式。2、類物件。3、友元。4、子類成員函式

protected

1、類的成員函式。2、友元。3、子類成員函式

private

1、類的成員函式。2、友元

二、c++類的繼承

繼承方式也有三種:public,protected和private。

繼承之後,基類成員的可訪問性會發生變化,如下表:

public繼承

基類public

protected

private

子類public

protected

不可見

protected繼承

基類public

protected

private

子類protected

protected

不可見

private繼承

基類public

protected

private

子類private

private

不可見

從上面可以看出,經過繼承後,基類的成員訪問性會發生改變,派生類對其的訪問仍然遵從類的訪問控制規則。有關三種繼承方式,派生類對基類成員的訪問說明,網上有很大網友寫了大量的文章,不過我覺得文字說明很容易把人繞暈,反而丟掉了其本質。我以為繼承沒有網友說的那麼麻煩,就是基類的可訪問性在派生類中發生了改變,然後,派生類再使用類訪問控制規則對其進行訪問即可。

值得注意的地方有兩個:

一、基類中的private成員在派生類中是不可見的,即無法通過派自己的成員函式去訪問,但可以通過繼承來的成員函式訪問。

二、private繼承,基類的public和protected成員都成為派生類中的private成員,這樣,如果對派生類再派生乙個子類,那麼,在派生的子類中,將無法直接通過該子類的成員函式訪問繼承來的成員;

三、派生類從基類中無法繼承的是哪些成員

派生類無法從基類中繼承的成員有三種:

1、建構函式和析構函式

2、賦值操作符(operator=()member)

3、友元

C 類訪問控制及繼承

一 c 類的訪問控制有三類 public,protected和private。類訪問控制符 類成員可被哪些物件訪問 public 1 類的成員函式。2 類物件。3 友元。4 子類成員函式 protected 1 類的成員函式。2 友元。3 子類成員函式 private 1 類的成員函式。2 友元 二...

C 類成員訪問控制及繼承的訪問控制

公有型別成員定義了類的外部介面,在類外智慧型訪問類的公有成員 私有成員只能被本類的成員函式訪問,來自外部的任何訪問都是非法的,完全隱藏在類中,保護了資料的安全性 保護型別成員的性質和私有成員性質相似,其差別在於繼承過程中對產生的新類的影響不同,意義在於不想向外部暴露某個函式或者成員變數,但又想讓派生...

C 繼承 單個類的訪問控制

public 修飾的成員變數 方法 在類的內部 類的外部都能使用 protected 修飾的成員變數方法,在類的內部使用 在繼承的子類中可用 其他 類的外部不能被使用 private 修飾的成員變數方法 只能在類的內部使用 不能在類的外部 class parent 保護繼承 class child3...