2011-01-21 4 views
0

# ifdef, #ifndef 및 #endif의 사용법에 대해 알고 싶습니다. 어떤 조건에서이 조건문을 사용해야하며 어떤 용도로 사용해야합니까? #ifdef와 #ifndef의 차이점은 무엇입니까? 예를 들어iPhone에서 #ifdef 및 #endif 프로세서 지시문을 사용하는 방법은 무엇입니까?

:

#define MY_Global 

#ifdef MY_Global 
    // write some code (Inside the method) 
#endif 

또는, 하나는 그것이 유일한 방법 안에 작성해야하거나 방법 밖에 일을하지 여부, 올바른

#ifdef MY_Global 
    -(void) customMethod 
    { 
     // Do something 
    } 
    #endif 

? 나는 전에 이것을 사용하지 않았다. 제발 설명해 주시겠습니까?

감사합니다.

+0

두 번째 것은'MY_Global'이 정의되지 않은 경우'customMethod'가 완전히 누락 될 것임을 의미합니다. – BoltClock

답변

2

AFAIK, #ifdef = "정의 된 경우"및 #ifndef = "정의되지 않은 경우". 이 시뮬레이터는 AccelerometerSimulation.h에 대해 컴파일 할 때, 어떤 의미

#if TARGET_IPHONE_SIMULATOR 
    #import "AccelerometerSimulation.h" 
    #endif 

:이 조건문 예를 들어 당신이 특정 코드는 다음과 같은 것을 써서 만 시뮬레이터 컴파일하려는 경우 유용합니다 가져올 것입니다. 장치에서 컴파일하는 경우에는 완전히 무시됩니다. 희망이 도움이됩니다.

+1

'#if defined (NAME)'및'#if! defined (NAME)'대신'#ifdef 이름과'#ifndef 이름. 한 번에 여러 이름의 정의를 테스트 할 수도 있습니다 : #if defined (NAME1) && defined (NAME2)'. –

관련 문제