Obj-C,DEBUG定义日志语句不起作用,因为升级Xcode?

时间:2011-11-24 19:47:03

标签: objective-c xcode cocoa-touch

我很高兴使用我的调试语句,直到最近我升级了Xcode,现在它们无法正常工作。

#ifdef DEBUG
#   define SQLLog(fmt, ...) NSLog((@"%s [Line %d] " fmt), 
                __PRETTY_FUNCTION__, __LINE__, ##__VA_ARGS__);
#else
#   define SQLLog(...)
#endif

我需要做些什么来解决这个问题?

1 个答案:

答案 0 :(得分:2)

我无法解释为什么它曾经工作并且在升级Xcode之后它停止这样做,但可能与它确实使用NDEBUG这代表“非调试”的事实有关; NDEBUG在标准中定义,DEBUG不是。

您的问题的简短解决方案应该明确定义项目构建配置下的DEBUG符号。

还要看一下这篇文章:_DEBUG vs NDEBUG