zoukankan      html  css  js  c++  java
  • Class和id-01

    1.结构体 objc_class

     1 struct objc_class {
     2     Class isa  OBJC_ISA_AVAILABILITY;
     3 
     4 #if !__OBJC2__
     5     Class super_class                                        OBJC2_UNAVAILABLE;
     6     const char *name                                         OBJC2_UNAVAILABLE;
     7     long version                                             OBJC2_UNAVAILABLE;
     8     long info                                                OBJC2_UNAVAILABLE;
     9     long instance_size                                       OBJC2_UNAVAILABLE;
    10     struct objc_ivar_list *ivars                             OBJC2_UNAVAILABLE;
    11     struct objc_method_list **methodLists                    OBJC2_UNAVAILABLE;
    12     struct objc_cache *cache                                 OBJC2_UNAVAILABLE;
    13     struct objc_protocol_list *protocols                     OBJC2_UNAVAILABLE;
    14 #endif

    2.指向结构objc_class的指针类型 Class

    3.结构体objc_object里面包含成员变量 Class isa

    4.指向结构体objc_object的指针类型 id

     1 #if !OBJC_TYPES_DEFINED
     2 /// An opaque type that represents an Objective-C class.
     3 typedef struct objc_class *Class;
     4 
     5 /// Represents an instance of a class.
     6 struct objc_object {
     7     Class isa  OBJC_ISA_AVAILABILITY;
     8 };
     9 
    10 /// A pointer to an instance of a class.
    11 typedef struct objc_object *id;
    12 #endif
  • 相关阅读:
    idea git 操作
    1
    python 迭代器/生成器/迭代对象
    python 中的type
    systemd 配置文件
    python 中类的初始化过程
    mysql主从错误180301
    从零开始搭建k8s-20180301
    kubernetes role
    Java程序员毕业两年自述
  • 原文地址:https://www.cnblogs.com/fkunlam/p/4377613.html
Copyright © 2011-2022 走看看