class A; class B { A *m_pa; public: B(A *pa) : m_pa(pa) { } }; class A { B m_b; public: A() : m_b(this) { } // здесь }