【objc新老runtime接口类型对比】
1、objc_class->class_t.
objc_class,此类型仍有,在OBJC2中,此类型的保留只是为了与OBJC1兼容。
上图看到,在OBJC2中,objc_class只有一个成员变量,isa。此变量存在的意义只是为了与OBJC1兼容。
class接口类型在OBJC2中变成了class_t,在runtime处理时,将objc_class*(即Class)强转成class_t*。
2、objc_method -> method_t。 && objc_method_list -> method_lsit_t。
3、objc_ivar -> ivar_t。 && objc_ivar_list ->ivar_lsit_t。
4、objc_category -> category_t。 &&
5、objc_property -> property_t。
6、Protocol -> protocol_t。(这个比较特殊)
7、SEL,就是char*,IMP是统一的以(id, SEL)参数打头的函数指针。
【IMP原型】
IMP前2个参数是id,sel,后跟任意参数。
上述为并不完整,日后再补充。起个方向引导作用。