2017-10-03 11 views
0

Swift에서 컴파일러를 제어하기 위해 플래그를 사용하고 싶습니다. C (와 C++, Objective C, ....)에서 #ifdef, #ifndef, #else, #endif를 사용하는 것처럼Swift에서 조건부 컴파일

나는 그물에서 작업하는 방법을 찾았지만 다음과 같은 경우. 읽는 사람은 누구나 내가 원하는 것을 이해할 것이다. 그럼에도 불구하고 컴파일러는 불평합니다. 돌아 다니는 길은 무엇입니까? 물론 동일한 10 개 이상의 줄을 두 번 복사하지 않아도됩니다. http://en.swifter.tips/condition-compile/ here을 찾을 수 있습니다 것과 유사하다 : 나는 여기에 사용하고있는 정보를 가지고

#if UseAds 
class ViewController: UIViewController,XYZBannerDelegateProtocol { 
#else 
class ViewController: UIViewController { 
#endif 

참고.

그러나 이들 중 어느 것도 내 문제를 해결하지 못합니다. 그들은 단지 그것을하는 기본적인 방법을 말해.

+0

당신이 UseAds 값을 정의 적이 있습니까? – Andrea

+0

[Swift 3 : API 키를 구현하기 위해 PREPROCESSOR Flags (예 : \'#if DEBUG \ ')를 사용하는 방법?] (https://stackoverflow.com/questions/38813906/swift-3-how-to- use-preprocessor-flags-like-if-debug-to-implement-api-keys) – Palle

+0

예 UseAds 값을 정의했습니다. – Michel

답변

1

당신은 다음과 같이 사용할 수 있습니다

class ViewController: UIViewController { 
    // Your common functions 
} 
#if UseAds 
    extension ViewController: XYZBannerDelegateProtocol { 
     // Your delegate methods  
    } 
#endif 
+0

위대한이 작동하고 깨끗합니다. 고마워. – Michel