分类 标签 存档 黑客派 订阅 搜索

Swift 中使用 #if DEBUG

174 浏览

Swift 暂时还不支持大多数的预处理宏操作,但是可以支持#if/#else/#endif语句。

下面进行简单的设置使 #if DEBUG 有效,更详细的内容见:http://stackoverflow.com/questions/24003291/ifdef-replacement-in-swift-language

  1. 在项目的 Build Settings 里配置 Swift Compiler - Custom Flags,展开 Other Swift Flags,在 Debug 右侧输入 “-DDEBUG”。也可以“-D DEBUG”,但是不能有赋值,如:“-DDEBUG=1” 或 “-D DEBUG=1” 都是无效的。
  2. 在项目的 Build Settings 里配置 Apple LLVM x.x - Preprocessiong,展开 Preprocessor Macros,在 Debug 右侧默认包含 “DEBUG=1”,若没有请手动加入。

说明:第 1 步使 Swift 代码编译 Debug 时定义 DEBUG 标记,第 2 步使 Objective-C、C、C++ 的 LLVM 预处理在 Debug 时定义 DEBUG=1 宏标记。如果是纯 Swift 工程可以忽略第 2 步。

原文地址

以上为 Xcode7 中设置, Xcode8 中添加了 SWIFT_ACTIVE_COMPILATION_CONDITIONS 选项,现在直接在里面添加DEBUG就可以了, 不需要在前面加-D.

--EOF--

评论  
留下你的脚步
推荐阅读