OC、Swift设置编译条件

在 OC 中我们设置编译条件,一般通过修改

image

Preprocessor Macros 中对应的宏定义。但是在Swift中,预处理的宏定义已经无效了,主要是 Swift 不在包含预处理的过程

The Swift compiler does not include a preprocessor. Instead, it takes advantage of compile-time attributes, build configurations, and language features to accomplish the same functionality. For this reason, preprocessor directives are not imported in Swift.

那么我们该如何在编译时做条件选择呢?

Swift中设置编译条件

在 Xcode 8 之前我们可以通过设置

image

Swift Compiler - Custom Flags 来设置我们需要用到的条件,在 Other Swift Flags 中设置 -D ADHOC

  1. Go to your project / select your target / Build Settings / search for Custom Flags
  2. For your chosen target set your custom flag using -D prefix (without white spaces), for both Debug and Release
  3. Do above steps for every target you have

在 Xcode 8 之后我们可以直接设置

image

Stackoverdflow 上边的回答

image

你可能感兴趣的:(OC、Swift设置编译条件)