【问题标题】:How can I add an #ifdef DEBUG to Xcode?如何将#ifdef DEBUG 添加到 Xcode?
【发布时间】:2012-01-05 15:17:43
【问题描述】:

我的项目中有一些代码永远不应该在发布版本中使用,但在测试时很有用。我想做这样的事情:

#ifdef DEBUG
    // Run my debugging only code
#endif

在 Xcode 4 中的何处添加 DEBUG 设置?我尝试将它放在 Run MyApp->Arguments Passed On Launch 下的“编辑方案”中,但它不起作用。或者,是否有可用的标志?

【问题讨论】:

    标签: objective-c c ios xcode debugging


    【解决方案1】:

    在最近的 Xcode 项目模板中,已经为 Debug 构建配置定义了一个 DEBUG=1 宏(在 Preprocessor Macros 部分中)。您可以使用#if 预处理器指令对其进行测试。

    【讨论】:

    • 我正在处理一个使用 Xcode 3 模板创建的项目。使用#if,它仍然会忽略代码。可能是我自己删除的,我不确定。你知道我可以在 Xcode 4 的什么地方进行设置吗?
    • 这是配置,不是方案。 ;)
    • 您混淆了方案和配置。通常没有调试方案,但通常选择调试配置的运行方案。
    • 啊,是的,谢谢,整个构建变得……复杂了 :) 我已经编辑了这篇文章。 @nevan,查看构建设置并过滤“预处理器”。您应该会看到一个名为 Preprocessor Macros 的部分,您应该在 Debug sch—— 配置旁边放置 DEBUG=1 行。
    • @zoul 知道了,现在可以使用了。这是我使用的过程:在 Project->MyApp 中,在“构建设置”下,我过滤了“预处理器”。将鼠标悬停在“预处理器宏”上,我单击了显示箭头,它显示了我的“调试、临时、发布”选项。我在“MyApp”列中单击了 Debug 并添加了“DEBUG=1”。这会自动将其复制到 LLVM 和 LLVM/GCC 设置中。我必须同意整个方案/配置的事情。 Xcode 让我很困惑。
    【解决方案2】:

    我通常将我的-DDEBUG=1 添加到我的 XCode 4 项目的构建设置中的 OTHER_C_FLAGS 部分。

    是的,它们甚至可以区分 Debug/Release/ADHOC/Store 构建。

    【讨论】:

    • 我见过这个,但是因为“调试、临时、发布”选项只有在鼠标悬停时才会出现,所以我不知道如何选择。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-21
    相关资源
    最近更新 更多