当 Xcode 在其构建设置中显示预处理器宏时DEBUG=1
,这是否等同于手动键入预处理器宏,例如#define DEBUG 1
?
问问题
662 次
2 回答
0
是的,这对应于“-DDEBUG=1”预处理器选项,相当于在#define DEBUG 1
处理任何源文件之前读取的宏定义。
于 2013-06-29T04:15:02.750 回答
0
是的,但仅在调试配置中。如果添加#define DEBUG 1
到代码中,则 DEBUG 将在 Release 和 Debug 配置中定义。不同的操作使用不同的构建配置
Action | Configuration
--------------------------
Run | Debug
Test | Debug
Profile | Release
Analyze | Debug
Archive | Release
因此,通过在 Build Settings 中定义 DEBUG,您可以添加仅在本地构建中运行的代码。但不在您的 Ad Hoc 或 App Store 版本中。
#ifdef DEBUG
[self.tapGestureRecognizer addTarget:self action:@selector(segueHiddenDevMenu:)];
#endif
此代码向“Nuke and Pave the Database”、“向数据库添加 10000 条新记录”、“创建默认图像视图”添加了一个仅限开发人员的菜单。用户不应该玩的东西。以及会导致您的应用被拒绝的隐藏功能。
于 2013-06-29T04:17:48.190 回答