class B; class A { B* pb_; public: A(B* pb = 0) : pb_(pb) {} }; class B { A a; public: B() : a(this) {} }; int main() { B b; }