如何在VC代码里添加TODO编译警告

我们写代码时常把主干写完,部分细节未来的及完成的,很多人都会习惯在相应位置加个TODO注释。

问题是这样很容易忘掉后续补上,很容易酿成潜在的BUG;查找维护也不是很方便。总之不太专业。

以前工作过某外企的编码规范里面有一个罕见规定,专门解决该问题;个人觉得是个很好的方案:

使用#pragma message指令把TODO信息标记上。

>>这样每次编译工程时,编译器的输出里都会把这些TODO信息打出来,让程序员每次编译后都会得到提醒那些待定项的存在,并评估是否需要在本次出版本前修复掉。

举例:

#define TODO( x )  message( x )
int main(int argc, char **argv)
{
//...
#pragma TODO(Remember to fix this)
//... 
return 0;
}



【附】

一具体完备的例子:FIXME & TODO Notes As Warnings In Compiler Output

http://www.flipcode.com/archives/FIXME_TODO_Notes_As_Warnings_In_Compiler_Output.shtml

MSDN上关于#pragma指令的解释:Pragma Directives -- MSDN:

http://msdn.microsoft.com/en-us/library/d9x1s805(v=vs.71).aspx

GCC下的类似方案:Diagnostic Pragmas

http://gcc.gnu.org/onlinedocs/gcc/Diagnostic-Pragmas.html

posted @ 2012-02-01 18:13  麦仲肥  阅读(523)  评论(0编辑  收藏  举报