下面的类:
class Base { public: void f(){cout<<"Base::f()"<<endl;} protected: Base(){cout<<"Base::Base"<<endl;} private: void g() {cout<<"Base::g()"<<endl;} } class First: public Base{ public: First(){cout<<"First::First"<<endl;} }
class Base { public: void f(){cout<<"Base::f()"<<endl;} protected: Base(){cout<<"Base::Base"<<endl;} private: void g() {cout<<"Base::g()"<<endl;} } class First: public Base{ public: First(){cout<<"First::First"<<endl;} }
main() { Base a; }
main() { First a; }
main() { First a; a.f(); }
main() { First a; a.g(); }
#include <iostream> using namespace std; class Base { public: void f(){cout<<"Base::f()"<<endl;} //Base类的构造函数被声明为受保护的,因此它只能在类内部和派生类内部访问 //而不能在类的外部(如 main 函数中)直接访问 protected: Base(){cout<<"Base::Base"<<endl;} private: void g() {cout<<"Base::g()"<<endl;} }; //class花括号"{}"后要加上";"号 class First: public Base { public: First(){cout<<"First::First"<<endl;} }; int main(void) { //Base a; return 0; }