240 发简信
IP属地:云南
  • Resize,w 360,h 240
    ios底层原理-006 cache分析

    之前的文章已经分析了objc_class中,ISA[https://www.jianshu.com/p/300a3167c113]和bit[ht...

  • Resize,w 360,h 240
    isKindOfClass和isMemberOfClass底层分析

    一个iskindOfClass & isMemberOfClass的经典面试题 类方法调用 实例方法调用 打印结果如下 在分析结果之前, 我们先...

  • Resize,w 360,h 240
    实例方法与类方法的归属

    我们知道实例方法存储在类中,类方法存储在元类中今天要探索的是,类方法是属于类还是属于元类1.创建一个类,定义一个实例方法和类方法做比较 main...

  • Resize,w 360,h 240
    内存偏移

    在类的结构分析[https://www.jianshu.com/p/3e97c018df4c]中,用到了内存偏移,在这里补充一下 普通指针 定义...

  • Resize,w 360,h 240
    iOS底层原理-005 isa

    我们知道OC对象都是结构体。那怎么验证呢 生成cpp文件验证 创建一个工程,创建一个Person类 编译cpp文件的方法 1、clang cla...

  • Resize,w 360,h 240
    iOS底层原理-004 联合体位域

    联合体与结构体的区别 联合体(union),与结构体(struct)有极为相似的语法结构,跟struct一样可以有多种数据类型和成员 结构体(s...

  • Resize,w 360,h 240
    iOS底层原理-003 类的结构分析

    准备工作 首先定义两个类 继承自NSObject的GLPerson 继承自GLPerson的GLTeacher 创建对象 元类 进入lldb调试...

  • Resize,w 360,h 240
    iOS底层原理-002 struct内存对齐

    提出问题 当我们定义一个 struct 的时候,它在内存中是怎么存储的?占用了多少字节的内存空间呢?这就是我们今天要探索的问题。 基本数据类型的...

  • Resize,w 360,h 240
    iOS底层原理-001 探索alloc

    alloc与init在对象初始化的作用 先列出一段代码与输出结果 输出结果 发现三个对象都指向同一块内存空间,初步认定init并没有对p1做了处...