在A类中定义B类的对象,然后用这个对象调用B类中的成员。

解决方案 »

  1.   

    直接在CA类中的构造和析构中进行CB的new和delete,在类外使用时跟CA的类成员对象一样。示例如下:class CA
    {
    public:
        CA()
        {
            pObject_b = new CB;
        }
        ~CA()
        {
            delete pObject_b;
        }    class CB
        {
        public:
            CB()
            {}
            ~CB()
            {}
            // definition and  here    public:
            void func_b()
            {
                // code
            }
            // more
        };public:
        CB *pObject_b;protected:
        void func_a()
        {
            pObject_b->func_b();  // 类中调用
        }
    };int function_out()
    {
        CA object_a;    object_a.pObject_b->func_b();   // 类外调用    return 0;
    }
    //
      

  2.   

    int CA::CB:func_b() 
    {
     return 1;
    }