参考:http://wenku.baidu.com/view/f5e105db50e2524de4187e04.html
TRACE
TRACE(exp)
说明: 把一个格式化字符串送到转储设备,
例如,文件或调试监视器,而提供与printf相似的功能。
同MS_DOS下C程序的printf一样,TRACE宏是一个在程序运行时跟踪变量值的方便形式。
在DEBUG环境中,TRACE宏输出到afxDump。在Release版中他不做任何工作。
注释: 此宏只在此宏只在此宏只在此宏只在MFC的的的的DEBUG版中有效版中有效版中有效版中有效。
TRACE0
TRACE0(exp)
说明: 与TRACE相似,但他把跟踪字符串放在代码段中,而不是DGROUP,因此使用少的DGROUP空间。
TRACE0是一组跟踪宏的一个变体,这些宏可用于调试输出。这一组包括TRACE0,TRACE1,TRACE2和TRACE3,这些宏不同在于所取参数的数目不同。TRACE0只取一个格式化字符串并可用于简单文本消息只取一个格式化字符串并可用于简单文本消息只取一个格式化字符串并可用于简单文本消息只取一个格式化字符串并可用于简单文本消息。。。。
TRACE1取一格式化字符串加上一个变量取一格式化字符串加上一个变量取一格式化字符串加上一个变量取一格式化字符串加上一个变量——一个将转储的变量一个将转储的变量一个将转储的变量一个将转储的变量。。。。同样同样同样同样,,,,
TRACE2,TRACE3分别取分别取分别取分别取2个个个个或或或或3个参数个参数个参数个参数((((在格式化字在格式化字在格式化字在格式化字符串之后符串之后符串之后符串之后)。)。)。)。如果用户以便以了应用程序的发行版,那么它只把数据转储到afxDump。
注释: 此宏只在MFC的DEBUG中有效。
TRACE1 TRACE1(exp,param1) (一个表达式加上一个参数)
TRACE2 TRACE2(exp,param1,param2)
TRACE3 TRACE3(exp,param1,param2,param3)
总结用法如下:
1.在MFC中加入TRACE语句
2.在TOOLS->MFC TRACER中选择 “ENABLE TRACING”点击OK
3.进行调试运行,GO(F5)(特别注意:不是执行‘!’以前之所以不能看到TRACE内容,是因为不是调试执行,而是‘!’了,切记,切记)
4.然后就会在OUTPUT中的DEBUG窗口中看到TRACE内容了,调试执行会自动从BUILD窗口跳到DEBUG窗口,在那里就看到TRACE的内容了