分类: C/C++
2009-06-04 17:18:57
我的一个同事写了一段代码,其中一段是这样的:
#define DEBUG 0
#ifdef DEBUG
...
...
#endif
他的意思是这段代码仅仅是为了调试用的,而且这个调试代码一旦启用,就会严重影响产品性能。其实这个代码很简单,但是犯了一个错误,没有区分#if和#ifdef。
正确的写法应该是:
//#define DEBUG
#ifdef DEBUG
...
...
#endif
或者
#define DEBUG 0
#if DEBUG
...
...
#endif
这个看似简单的问题却导致产品出现了漏洞,可见不简单啊。
做产品,做事情,都在于细节之中啊。
天下之大,必作于细!
(http://blog.csdn.net/philofly/archive/2009/02/23/3930135.aspx)