수색…


BOOL / Boolean / bool / NSCFBoolean

  1. bool은 C99에서 정의 된 데이터 유형입니다.
  2. 부울 값은 조건부로 if 또는 while 문과 같이 조건부로 논리를 수행하거나 반복 실행하는 데 사용됩니다. 조건문을 평가할 때 값 0은 "거짓"으로 간주되고 다른 값은 "참"으로 간주됩니다. NULL 및 nil은 0으로 정의되므로 존재하지 않는 값에 대한 조건문도 "false"로 평가됩니다.
  3. BOOL은 signed char로 정의 된 Objective-C 유형이며 true 및 false를 나타내는 매크로는 YES 및 NO입니다.

objc.h의 정의에서 :

#if (TARGET_OS_IPHONE && __LP64__)  ||  TARGET_OS_WATCH
typedef bool BOOL;
#else
typedef signed char BOOL; 
// BOOL is explicitly signed so @encode(BOOL) == "c" rather than "C" 
// even if -funsigned-char is used.
#endif

#define YES ((BOOL)1)
#define NO  ((BOOL)0)
  1. NSCFBoolean은 NSNumber 클래스 클러스터의 개인 클래스입니다. 이것은 CFBooleanRef 유형에 대한 다리이며, Core Foundation 속성 목록 및 콜렉션에 대한 부울 값을 래핑하는 데 사용됩니다. CFBoolean은 상수 kCFBooleanTrue 및 kCFBooleanFalse를 정의합니다. CFNumberRef와 CFBooleanRef는 Core Foundation에서 다른 유형이므로 NSNumber에서 서로 다른 브리징 클래스로 표현된다는 의미가 있습니다.

BOOL VS Boolean

BOOL

  • Apple의 Objective-C 프레임 워크 및 대부분의 Objective-C / Cocoa 코드 사용
    BOOL.
  • CoreFoundation API를 처리 할 때 objective-C에서 BOOL을 사용하십시오.

부울

  • 부울은 이전의 Carbon 키워드이며 서명되지 않은 char로 정의됩니다.


Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow