http://topic.csdn.net/u/20110519/23/cce5ff99-c13b-4d3b-9e47-d0fab4ba8da9.html?seed=731244564&r=73412830#r_73412830 问题的引入是论坛上面的一个惊动“特技大牛”的讨论,呵呵,欢迎拍砖~~ #include <iostream> using namespace std; class C; class A { public: A( ) {cout<<"A::A( )/n";} }; class B:public A { public: B( int m=0 ):m_b_int( m ){cout<<"B::B( )/n";} void display( ){cout<<"B member is "<<m_b_int<<endl;} friend void callCFunc(B& bb,C& cc); private: int m_b_int; }; class C { public: C( int n=0 ):m_c_int( n ){cout<<"C::C( )/n";} void display( ){cout<<"C member is "<<m_c_int<<endl;}