我需要在此次调用中添加一个条件暂存 ..
在这种情况下如何做到这一点。
#ifdef MYAPP_PRODUCTION
buildMode = @"Production";
#else
#ifdef MYAPP_RELEASE
buildMode = @"Release";
#else MYAPP_DEBUG
buildMode = @"Debug";
#endif
#endif
另一个是MyApp_Staging
需要包含在这个if条件中如何做到这一点?
答案 0 :(得分:63)
您可以执行以下操作来包含所有不同的选项,包括新的暂存模式,并使整个语句更清晰:
#ifdef MYAPP_PRODUCTION
buildMode = @"Production";
#elif MYAPP_RELEASE
buildMode = @"Release";
#elif MYAPP_DEBUG
buildMode = @"Debug";
#elif MYAPP_STAGING
buildMode = @"Staging";
#endif
答案 1 :(得分:57)
你的问题不是很清楚......如果你想在#ifdef中有多个条件,这是一个解决方案:
#if defined(MYAPP_RELEASE) && defined(MyApp_Staging)
// ...
#else
// ...
#endif
答案 2 :(得分:10)
在Swift和Xcode 7中,语法已经改变:
#if DEBUG || RELEASE
let URL = "https://www.example.com/beta"
#elseif APPSTORE
let URL = "https://www.example.com/prod"
#endif
答案 3 :(得分:0)
如果你想用2个构建目标来否定条件,请使用这样的方法。
#if !(TOWNTALK || EPISD)
答案 4 :(得分:0)
那呢?
#if defined(MYAPP_PRODUCTION)
buildMode = @"Production";
#elif defined(MYAPP_RELEASE)
buildMode = @"Release";
#elif defined(MYAPP_DEBUG)
buildMode = @"Debug";
//#elif defined(MYAPP_STAGING)
#else
buildMode = @"Staging";
#endif