2010-08-21 1 views
7

는,이 유사한 방법을 정의? 아니면 그것은 심지어 대상입니까? 이 객체로 무엇을 할 수 있습니까? 기본 클래스 나 채택 된 프로토콜을 얻을 수 있습니까?클래스 유형 목적 C

답변

15

Class은 자체가 Objective-C runtime에 정의 된 클래스이며 Java의 Class 클래스와 유사합니다. 예를 들어, 클래스의 이름을 얻을 수있는 기능 class_getClassName()을 사용할 수 있습니다 : 당신은 Class 객체와 반성/반사 모든 종류의 작업을 수행 할 수 있습니다

NSObject *o = [[[NSObject alloc] init] autorelease]; 
NSLog(@"%s\n", class_getClassName([o class])); // prints "NSObject" 

을; 자세한 내용은 Objective-C 런타임 참조를 참조하십시오.

1

지금

NSObject *o = [[NSObject alloc]init];
NSLog(@"%s\n", object_getClassName([o class]));

object_getClassName 대신 class_getClassName

입니다