两个类A的对象a,b,如果A的父类是CObject,则不可以a = b,为什么?

解决方案 »

  1.   

    class CObject
    {
     …………
    private:
         CObject(const CObject& objectSrc);
         void operator=(const CObject& objectSrc);    
    }
    拷贝构造函数和operator=都是私有的,所以无法复制对象。
      

  2.   

    自己写 A 的 operator= ,CObject 禁止 operator= 的原因是防止两个不相关的 CObject 派生类通过 CObject 的 operator= 互相拷贝而使编译器不发出警告