2013-10-11 38 views

回答

1

請注意,你不應該直接訪問isa指針以獲取對象類,但改爲使用objc_getClass()。例如,在ARM64中,除了類指針外,isa字段還包含其他標誌(最顯着的是對象的引用計數,如果它足夠小的話)。有關更多詳細信息,請參見this post by Mike Ash

0

如果在運行時的一類,你會遇到這樣看...

typedef struct objc_class *Class; 
typedef struct objc_object { 
    Class isa; 
} *id; 

編輯:

而且在NSObject.h

/*********** Base class  ***********/ 

NS_ROOT_CLASS 
@interface NSObject <NSObject> { 
    Class isa; 
} 
相關問題