class A { protected: void fa() { printf("fa called"); } }; class B : public A { public: void fb() { fa(); } }; class C : public B { public: void fc() { fa(); } }; int main() { C c; c.fc(); return 0; } 根据我前面介绍的规则,在C++中这些代码是能成功运行的。但是假如你把它们改变为托管类,则在类c中是不能调用fa()的。