在使用编译器指令时,我不清楚以下两个代码段中哪一个是正确的/首选的,以及为什么.我见过的大多数开发人员和开源项目似乎都使用第一种方法,但我也看到第二种方法也经常使用.
#ifdef DEBUG
[self doSomethingOnlyWhenDebugging];
#endif
对
#if DEBUG
[self doSomethingOnlyWhenDebugging];
#endif
以上哪一段代码更适合只在调试时运行代码?为什么?我的猜测是,如果DEBUG被定义为TRUE或FALSE,第一个将运行,而第二个将仅在DEBUG被定义并设置为TRUE时运行.对吗?