转载处:http://blog.csdn.net/linhong835/archive/2008/04/09/2268472.aspx
Dump函数用来按指定的格式输出一个对象的成员变量,来帮助你诊断一个对象的内部情况。与AssertValid 成员函数一样,Dump 也是Cobject 类的成员函数。Dump 函数的参数是一个CdumpContext 对象,你可以象利用流一样往向这个对象中输入数据。当你创建一个Cobject 继承而来的 新类时,你可以按如下步骤重载你自己的Dump 函数:
(1) 调用基类的Dump 函数,以输出基类的内容;
(2) 向Cdumpcontest 对象输出该类的数据.
例如,典型的Dump 函数定义如下:
#ifdef _DEBUG
void CPerson::Dump( CDumpContext& dc ) const
{
// call base class function first
CObject::Dump( dc );
// now do the stuff for our specific class
dc << "last name: " << m_lastName << "/n"
<< "first name: " << m_firstName << "/n";
}
Dump 函数将对象的成员变量的文本化表示形式写入转储上下文 (CDumpContext)。转储上下文类似于 I/O 流。可以使用插入运算符 (<<) 向 CDumpContext 发送数据。
重写 Dump 函数时,应先调用Dump的基类版本以转储基类对象的内容。然后为派生类的每个成员变量输出文本化说明和值。