class base ;
struct public_derived : public base
; //ok:i is protected , derived classes can access i
int use_base2(); //error: j is private }
struct protect_drived : protected base
; //ok:可以訪問受保護成員
int use_base2(); //error:不能訪問基類的私有成員 }
struct private_drived : private base
; //ok:
int use_base2(); //error:不能訪問基類的私有成員 }
void main()
如果是公用繼承,基類成員保持自己的訪問級別:基類的public成員為派生類的public成員,基類的protected成員為派生類的protected成員。
如果是受保護繼承,基類的public和protected成員在派生類中為protected成員。
如果是私有繼承,基類的所有成員在派生類中為private成員。
具體請參看上面的例子。
公有 私有和受保護成員的特點
公有 私有和受保護成員的特點公有 public 公有成員能被繼承,也可以被外部函式訪問。私有 private 私有成員不能被繼承,也不能被外部函式訪問。受保護 protect 受保護成員能夠被繼承,但是不能被外部函式訪問 在實現部分定義的成員預設是受保護成員 如 class a 而在實現部分的成員則...
公有的 私有的 受保護的繼承
include using namespace std class a int a int a2 protected 受保護的,int b private 私有的,int c class b1 public a 類b1繼承了公有的a,class c public b1 class b2 privat...
C 繼承 公有,私有和保護
公有繼承 public 私有繼承 private 保護繼承 protected 是常用的三種繼承方式。1.公有繼承 public 公有繼承的特點是基類的公有成員和保護成員作為派生類的成員時,它們都保持原有的狀態,而基類的私有成員仍然是私有的,不能被這個派生類的子類所訪問。2.私有繼承 private...