据说CObject是MFC中所有类的基类 那我自己定义类的时候 在什么情况下需要从CObject继承呢 
还有CObject有什么特性 能否说的详细一点 多谢!
50分奉上 

解决方案 »

  1.   

    据说CObject是MFC中所有类的基类
    ===这是错误的。
      

  2.   

    嗯,并不是每一个MFC类都从CObject派生的,CString就不是啊。一般来说,C++没有必要从CObject进行派生。正确的派生,你要看CObject都有哪些行为,你是不是需要这些行为。而且MFC不是Java,C#,不是很多地方都依赖于一个Object Root Class.
      

  3.   


    那在什么情况下才需要从CObject派生呢 还有CObject有什么特性呢 多谢!
      

  4.   

    1、要使用VC的序列化操作的时候
    2、要把你的类在CObjectArray之类的队列操作的时候
    3、好像并不是所有的类都是从CObject派生出来的
      

  5.   

    CObject是MFC内库的基类,主要提供下面四个基本的功能:
    1.支持序列化(DECLARE_DYNAMIC and IMPLEMENT_DYNAMIC)这两个宏来实现.
    2.类的run-time 信息。(DECLARE_SERIAL and IMPLEMENT_SERIAL)
    3.诊断输出
    4. 与其他类相兼容
    上面的特性就是你用来判断是否从他来继承了,我觉得最主要是前两点了,特别是序列化了,呵呵!
      

  6.   

    看看MFC类的继承体系,你会更加清楚。这个可以在MSDN中找到。