C++ 繼承 3--私有派生下的子類訪問父類公有、私有、保護成員
阿新 • • 發佈:2019-02-08
#include <iostream> using namespace std; /*--------------------------------- 10私有派生 ---------------------------------*/ class father { private: void room1() {cout<<"room1--父親的大房子我也可以享受\n";} public: void room2() {cout<<"room2--父親的大房子我也可以享受\n";} protected: void room3() {cout<<"room3--父親的大房子我也可以享受\n";} }; class son:private father //私有派生private { public: void enjoy() { //room1(); //父類的私有成員不能被訪問 room2(); //父類的公有成員能被訪問 room3(); //父類的保護成員能被訪問 } }; int main() { son a; a.enjoy(); //只能間接訪問room2()和room3() // a.room2(); //私有派生無法直接訪問父類的公有成員,而公有派生是可以的 // a.room3(); //私有派生無法直接訪問父類的保護成員,這一點公有派生與其相同 return 0; } 執行結果: room2--父親的大房子我也可以享受 room3--父親的大房子我也可以享受 Press any key to continue