直到
Xcode 5,使用默认的构建设置可以防止发布版本包含NSAssert语句及其变体:
OTHER_CFLAGS = "-DNS_BLOCK_ASSERTIONS=1";
此设置可以在project.pbxproj中找到,并在Xcode中设置:
(注意,这个抓取是从Xcode 4项目中转换为Xcode 5.)
每个目标将只在Release版本中继承此设置.显然这是一件好事.而不是立即崩溃,应用程序可能会无所适从.而对于Debug构建,您希望在NSAssert失败时立即知道.
但是,我正在努力寻找Xcode 5中的等价物.
使用默认模板创建新项目不会显示等效设置:
我的问题是,Xcode 5中的等效设置是什么,或者NS_BLOCK_ASSERTIONS必须手动添加到Release C的其他C标志?
解决方法
现在有它自己的设置字段!启用基础断言.将您的调试设置为yes,将您的版本设置为no,如下面的屏幕抓取所示.
注意:您需要单击“构建设置”选项卡左上角的“全部”才能看到它,您可以在屏幕上看到左上角的“全部”.