美文网首页
01-OC对象的本质

01-OC对象的本质

作者: 锐視角RaysJoe | 来源:发表于2019-12-05 12:11 被阅读0次

OC是通过C/C++的什么数据结构实现我们的OC对象呢

结构体--OC对象的本质就是C/C++的结构体
使用clang
xcrun xc是xcode

Class是一个指向结构体的指针在32位中占4个字节 在64位中占8个字节

截屏2019-12-05上午9.45.25.png

这个代码是给结构体分配存储空间,因为现在这个结构体里就一个成员,Class,Class是一个指针,所以这个对象的内存是暂时认为是8个字节

截屏2019-12-05上午9.52.16.png

创建完对象并且给这个对象分配完存储空间之后

我们要通过obj指针指向这个对象,

需要把isa指针的地址赋值给obj指针

截屏2019-12-05上午9.55.23.png

那刚刚我们假设是8个字节,其实是16个字节

截屏2019-12-05上午10.19.43.png

我们分析一下源码,第三步中可以看出是成员变量所占的大小

截屏2019-12-05上午10.30.31.png

相关文章

  • 01-OC对象本质

    一、面向对象 苹果的开源网站:https://opensource.apple.com/tarballs/ 1.内...

  • 01-OC对象的本质

    OC对象的本质 我们平时编写的OC代码,最终转换为底层实现基本上绝大部分都是基于C\C++来实现的 下面展示OC代...

  • 01-OC对象的本质

    OC是通过C/C++的什么数据结构实现我们的OC对象呢 结构体--OC对象的本质就是C/C++的结构体 Class...

  • 01-OC对象的本质

    一个NSObject对象占用多少内存?系统分配了16个字节给NSObject对象(通过malloc_size函数获...

  • 01-OC对象的本质

    探究:1.objc_alloc流程2.init操作3.开辟内存 alloc开辟内存. objc_alloc流程1....

  • OC底层原理探索文档汇总

    OC底层探索: 01-OC对象的底层分析[https://www.jianshu.com/p/953fcfddde...

  • OC 与 Swift

    OC对象的本质(上):OC对象的底层实现原理OC对象的本质(中):OC对象的种类OC对象的本质(下):详解isa&...

  • OC对象的本质(中)—— OC对象的种类

    OC对象的本质(上):OC对象的底层实现原理OC对象的本质(中):OC对象的种类OC对象的本质(下):详解isa&...

  • OC对象的本质(下)—— 详解isa&supercl

    OC对象的本质(上):OC对象的底层实现原理OC对象的本质(中):OC对象的种类OC对象的本质(下):详解isa&...

  • 对象的本质

    了解对象的本质 我们先看下面的代码 clang -rewrite-objc main.m -o main.cpp ...

网友评论

      本文标题:01-OC对象的本质

      本文链接:https://www.haomeiwen.com/subject/lczrgctx.html