La macro di preprocessre XCode # non funziona

Ciao ragazzi, mi sento un idiota a fare questa domanda, ma non posso aiutare me stesso perché penso davvero che sto facendo evacuare tutto.

Quindi ho macro preprocessre nel mio progetto XCODE chiamato LINPHONE_DEBUG nelle mie impostazioni di build. Ho impostato la macro su 0 esattamente come questa: LINPHONE_DEBUG=0

Ma in qualche modo quando uso questo codice:

 #if LINPHONE_DEBUG foo() #endif 

Il foo() è ancora chiamato vedi lo screenshot qui sotto.

inserisci la descrizione dell'immagine qui

Puoi vedere che ho printingto po LINPHONE_DEBUG ed è 0 ma ha comunque raggiunto il codice …

Sto eseguendo XCODE 6.4 (6E35b)

Grazie per l'aiuto in anticipo.

Solutions Collecting From Web of "La macro di preprocessre XCode # non funziona"

Da Swift iBook: utilizzo di Swift con Cocoa e Objective-C (Swift 2 Prerease)

"Il compilatore Swift non include un preprocessre. Al contrario, sfrutta gli attributi in fase di compilazione, le configurazioni di build e le funzionalità del linguaggio per get la stessa funzionalità. Per questo motivo, le direttive del preprocessre non vengono importte in Swift. "

"Configurazioni di build Il codice Swift e il codice Objective-C sono compilati condizionalmente in modi diversi. Il codice Swift può essere compilato condizionalmente in base alla valutazione delle configurazioni di build. Le configurazioni di build includono i valori letterali true e false, i flag della row di command e le funzioni di test della piattaforma elencate nella tabella seguente. Puoi specificare i flag della row di command usando -D <# flag #>. "

Vedere la documentazione per ulteriori informazioni su Build Configurations.

È ansible evitare le direttive del preprocessre inserendo le configurazioni dell'ambiente nelle strutture:

http://www.technoburgh.com/ios/swift-build-configuration/

Aggiornamento: questa soluzione funziona nell'objective c.

Dovresti provare in questo modo:

 #if LINPHONE_DEBUG > 0 foo() #endif