IT狗

iOS Class结构分析

objc_class结构体

类在OC中是objc_class的结构体指针

typedef struct objc_class *Class;

在objc/runtime.h中objc_class结构体的定义如下:

 

struct objc_class {        Class isa  OBJC_ISA_AVAILABILITY;        #if !__OBJC2__        Class super_class                       OBJC2_UNAVAILABLE;  // 父类        const char *name                        OBJC2_UNAVAILABLE;  // 类名        long version                            OBJC2_UNAVAILABLE;  // 类的版本信息,默认为0        long info                               OBJC2_UNAVAILABLE;  // 类信息,供运行期使用的一些位标识        long instance_size                      OBJC2_UNAVAILABLE;  // 该类的实例变量大小        struct objc_ivar_list *ivars            OBJC2_UNAVAILABLE;  // 该类的成员变量链表        struct objc_method_list **methodLists   OBJC2_UNAVAILABLE;  // 方法定义的链表        struct objc_cache *cache                OBJC2_UNAVAILABLE;  // 方法缓存        struct objc_protocol_list *protocols    OBJC2_UNAVAILABLE;  // 协议链表        #endif} OBJC2_UNAVAILABLE;

此文由 IT狗 编辑,本网站所发布展示的作品/文章版权归原作者所有,任何商业用途均须联系作者!

相关推荐

评论 暂无评论