2010-04-07 90 views

回答

4

根据MSDNCObject主要提供以下功能:

  • 支持串行
  • 运行时类信息
  • 对象诊断输出
  • 与集合类兼容性

所以当这些都不需要,不需要去来自CObject
CObject派生出来的时候会涉及到一些开销(DECLARE/IMPLEMENENT_SERIAL/DYNAMIC宏),因此可能会有比从CObject派生更简单的方法。

3

MFC文档涵盖了这一点。 CObject的文档描述了它的功能(序列化支持,运行时类信息等)。

Hierarchy Chart是一个很好的概述,并显示哪些类不是从CObject派生的。

您可以得出结论:不从CObject派生的类是那些不需要它提供的服务的类。原因很多:例如像CFileTime这样的类是一种简单的数据类型。

相关问题