#include <iostream> class S { public: static void f() { std::cout << "S::f()" << std::endl; } static void g() { std::cout << "S::g()" << std::endl; } static void h() { std::cout << "S::h()" << std::endl; } }; class A { public: void f() const { S::f(); } }; class B { public: void g() const { S::g(); } }; class C { public: void h() const { S::h(); } }; int main() { A a; a.f(); B b; b.g(); C c; c.h(); }
class B; class A { private: void del(){} void mod(){} void ins(){} friend class B; }; class B : public A { public: void del() { A::del(); } void mod() { A::mod(); } }; int main() { B b; b.del();//可行 b.mod();//可行 b.ins();//报错 return 0; }
5
3