一、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
不可見
從上面能夠看出,經過繼承後,基類的成員訪問性會發生改變,派生類對其的訪問仍然遵從類的訪問控制規則。有關三種繼承方式,派生類對基類成員的訪問說明,網上有非常大網友寫了大量的文章,只是我認為文字說明非常easy把人繞暈,反而丟掉了其本質。我以為繼承沒有網友說的那麼麻煩,就是基類的可訪問性在派生類中發生了改變,然後,派生類再使用類訪問控制規則對其進行訪問就可以。
值得注意的地方有兩個:
一、基類中的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...