扩展调试宏





2.00/5 (5投票s)
2001年6月14日
1分钟阅读

56295

748
一组用于检查表达式的调试宏,它们在
引言
这段代码可以使调试稍微容易一些。这段代码只是一个宏定义文件。
MFC 的 TRACE
宏仅将消息输出到调试窗口,而且在发布版本中没有用处。VERIFY
和 ASSERT
宏在发布版本中也没有用处。如果我们能够控制调试宏,而不管编译模式如何,这将使我们更容易进行调试。所以我编写了这个。它只是宏定义,但我认为它很有用。
这些宏是
// These macros return false and exit function when expression is false
CHECKEXPR(bExpression, ERRORMSG, RETURNVALUE)
CHECKVOIDEXPR(bExpression, ERRORMSG)
CHECKFUNC(bExpression, ERRORMSG, RETURNVALUE)
CHECKVOIDFUNC(bExpression, ERRORMSG)
// This macro exits the program when expression is false
EXITCHECKEXPR(bExpression, ERRORMSG, RETURNVALUE)
EXITCHECKVOIDEXPR(bExpression, ERRORMSG)
EXITCHECKFUNC(bExpression, ERRORMSG, RETURNVALUE)
EXITCHECKVOIDFUNC(bExpression, ERRORMSG)
如果发生意外情况,我们希望退出程序,或者忽略该情况并强制处理。如果想要退出程序,可以使用 EXITCHECK*
宏,如果想要忽略错误并继续,则使用 CHECK*
宏。
要使用此宏文件,您只需要添加
#include "LJSDebug.h"
到您的文件中。您必须在添加 #include "LJSDebug.h"
之前预定义 __LJS__DEBUG__YES__
或 __LJS__DEBUG__NO__
。
它在 Unicode 环境下以及 VC++ 6.0 中工作。 任何人都可以自由使用和修改此文件。
许可证
本文未附加明确的许可证,但可能在文章文本或下载文件本身中包含使用条款。如有疑问,请通过下面的讨论区联系作者。
作者可能使用的许可证列表可以在此处找到。