Tekkaman

导航

 

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,后跟任意参数。

  上述为并不完整,日后再补充。起个方向引导作用。

posted on 2013-04-30 01:43  Tekkaman  阅读(466)  评论(0编辑  收藏  举报