2011-08-26 11 views
18

I #ifdef koşullarında nasıl yazılır. Evreleme için. amaç-c

bu durumda bunu nasıl .. bu çağrı Evreleme içeride bir tane daha koşul eklemeniz gerekir.

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

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

başka koşul bunun nasıl yapılacağını, bu dahil etmek MyApp_Staging ihtiyaçtır?

cevap

55

Sen bütün açıklamada temizleyici yeni Evreleme Modu dahil tüm farklı seçenekler içeren ve yapmak böyle bir şey yapabileceğini: İçinde birden fazla koşul istiyorsanız

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

Sorunuz ... çok net değil bir #ifdef, burada bir çözümdür: Swift ve Xcode 7'de

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

Mükemmel! OP'nin ne istediği olmasa bile tam olarak aradığım şey – DonnaLea

+3

|| ayrıca çalışır:) # eğer tanımlanmış RELASE || tanımlanan STAGING –

2

, sözdizimi değişti:

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

Durumu, 2 yapı hedefi ile olumsuzlamak istiyorsanız, bunun gibi kullanın.

#if !(TOWNTALK || EPISD)

İlgili konular