TRACE macro 可用于在 中编译代码时向调试器输出诊断消息。调试 模式。我在 中需要相同的消息发布 模式。有没有办法实现这一目标?
(请做 而不是 浪费你的时间讨论为什么我不应该在 Release模式下使用 TRACE :-)
最佳答案
实际上,TRACE 宏比 OutputDebugString 灵活得多。它需要一个 printf() 样式的格式字符串和参数列表,而 OutputDebugString 只需要一个字符串。为了在 Release模式下实现完整的 TRACE 功能,您需要执行以下操作:
void trace(const char* format, ...)
{
char buffer[1000];
va_list argptr;
va_start(argptr, format);
wvsprintf(buffer, format, argptr);
va_end(argptr);
OutputDebugString(buffer);
}
关于mfc - 如何在 Release 模式下启用 TRACE 宏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27622/