繼承關系中的訪問控制
- 類中成員的訪問權限
- 類繼承中的訪問權限
- 派生類向基類轉換的權限問題(向上轉型)
- 友元在繼承中的訪問權限
類中成員的訪問權限
- public:類的對象(外部)可以訪問,派生類也可以訪問
- protected:類的對象(外部)不能訪問,派生類可以訪問
- private:類的對象(外部)不能訪問,派生類也不可以訪問
類繼承中的訪問權限
-
public繼承:public->public, protected->protected
派生類可以繼承基類中的公有成員和受保護成員,并將其作為自己的公有成員和受保護成員
-
protected繼承:public&protected->protected
將基類中的公有成員和受保護成員作為派生類的受保護成員
-
private繼承:public&protected->private
將基類中的公有成員和受保護成員作為派生類的私有成員,使得派生類無法直接訪問這些成員
派生類向基類轉換的權限問題(向上轉型)
注意:派生類的成員函數和友元函數中,可以進行向上轉型
友元在繼承中的訪問權限
- 友元不能被繼承:友元函數和友元類類似于基類的私有成員
- 派生類的友元不可直接訪問基類成員(包括公有成員)