iOS Runtime 과 메시지 메커니즘
struct objc_class *Class; // Class objective-c class
struct objc_object *id; // id objc_object
struct objc_class {
Class isa;
Class super_class;
const char *name;
long version;
long info;
long instance_size;
struct objc_ivar_list *ivars;
struct objc_method_list **methodLists;
struct objc_cache *cache;
struct objc_protocol_list *protocols;
} OBJC2_UNAVAILABLE;
isa objective-c Class
objc_class object_class isa
Class struct objc_class , , , 。
NSObject class 。
, isa。 , 。
typedef struct objc_selector *SEL;
objc_selector , / 。
IMP :
IMP :
typedef id (*IMP)(id, SEL, ...);
id , id objc_object , isa, NSObject id , NSObject isa。
, IMP :IMP , id(self ), SEL ( ), , id。 IMP , 。 C 。
NSObject methodForSelector: IMP ,methodForSelector: , 。
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
OC 의 두 가지 매 거 진 해석OC . NS_ENUM NS_OPTIONS . . typedef NS_ENUM(NSInteger, UIViewAnimationTransition) { UIViewAnimationTransitionNone, UIVie...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.