【问题标题】:How to write if condition in #ifdef. for Staging. in objective-c如何在#ifdef 中编写if 条件。用于分期。在客观-c
【发布时间】:2011-08-26 13:10:42
【问题描述】:

我需要在这个调用中再添加一个条件Staging..

如何在这种情况下做到这一点。

  #ifdef MYAPP_PRODUCTION
        buildMode = @"Production";
    #else

    #ifdef MYAPP_RELEASE
        buildMode = @"Release";
    #else MYAPP_DEBUG
       buildMode = @"Debug";
    #endif
    #endif

另一个是MyApp_Staging需要在这个if条件中包含怎么做?

【问题讨论】:

    标签: objective-c preprocessor-directive


    【解决方案1】:

    您可以这样做来包含所有不同的选项,包括新的暂存模式,并使整个语句更清晰:

    #ifdef MYAPP_PRODUCTION
        buildMode = @"Production";
    #elif MYAPP_RELEASE
        buildMode = @"Release";
    #elif MYAPP_DEBUG
        buildMode = @"Debug";
    #elif MYAPP_STAGING
        buildMode = @"Staging";
    #endif
    

    【讨论】:

      【解决方案2】:

      你的问题不是很清楚...如果你想在 #ifdef 中有多个条件,这里有一个解决方案:

      #if defined(MYAPP_RELEASE) && defined(MyApp_Staging)
          // ...
      #else
          // ...
      #endif
      

      【讨论】:

      • 完美!正是我想要的,即使它不是 OP 想要的
      • ||也有效:)#if 定义 RELASE ||定义分期
      【解决方案3】:

      在 Swift 和 Xcode 7 中,语法发生了变化:

      #if DEBUG || RELEASE
          let URL = "https://www.example.com/beta"
      #elseif APPSTORE
          let URL = "https://www.example.com/prod"
      #endif
      

      【讨论】:

        【解决方案4】:

        如果您想用 2 个构建目标否定条件,请像这样使用。

        #if !(TOWNTALK || EPISD)

        【讨论】:

          【解决方案5】:

          这个呢?

          #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  
          

          【讨论】:

            猜你喜欢
            • 2011-12-23
            • 2016-10-25
            • 1970-01-01
            • 2013-10-13
            • 1970-01-01
            • 2017-09-18
            • 2011-08-08
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多