首页
首页
沸点
课程
直播
活动
竞赛
商城
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Hello_Kid
掘友等级
iOS
|
不知名
越努力,越幸运
获得徽章 6
动态
文章
专栏
沸点
收藏集
关注
作品
赞
18
文章 17
沸点 1
赞
18
返回
|
搜索文章
赞
文章( 17 )
沸点( 1 )
字节半年,我的认知升级
声明 下文只是自己对比一些行业现状和过去半年经历的反思,并不影射任何公司任何部门,我在新团队工作的很开心,和优秀的人做有挑战的事是非常有趣的经历,文中的观点和认知也仅是当前这个时间节点上的一些感悟,未
手撕iOS底层16 -- 消息解析&消息转发原理
搜索__objc_forward_handler,根据之前总结的规则, 去掉一个下划线来搜索。 实际的本质都是调用objc_defaultForwardHandler,这就是我们日常中经常见到的崩溃错误。 通过注释也可以得知, 这个实在IMP没有找到的时候,会走这里解决,并且只…
手撕iOS底层13 -- 手摸手的助你理清`objc_msgSend`汇编源码
有没有内推,最近想换个坑位。 通过这段代码对比,得到方法的本质就是objc_msgSend消息发送, 可以在main函数中直接使用objc_msgSend来调用say1这个函数。 最终输出的结果一样的。 通过输出结果,发现[t say2] 和objc_msgSendSuper都…
iOS开发者还记得指针函数与函数指针吗?
指针函数函数指针函数指针作为返回值,也可以作为参数使用欢迎大佬留言指正😄,码字不易,觉得好给个赞👍有任何表达或者理解失误请留言交流;共同进步;
手撕iOS底层6 -- 对象isa深入分析
union是c/c++里的自定义复合数据类型,与struct类似, 但是它们所占用的内存空间不一样。 在_class_createInstanceFromZone这个方法里下面👇的代码片段。 首先判断类是不是nonpointer,自己创建的类都是nonpointer, 系统内…
手撕iOS底层07 -- What is object?
本篇目标:在众多的数据结构中,栈 链表 队列 树 图等, OC对象编译到底层是用什么结构去存储数据,
手撕iOS底层09 -- 类的结构深入剖析
以上是一段简单的c代码, 创建一个数组, 数组名是数组的首地址, 第一个元素也是这个数组的首地址。 然后把数组的首地址赋值给一个指向 和数组元素相同类型的指针变量. int *pa = &a[0] 简写:int *pa = a 之后可以直接通过对指针变量的++或+1的…
手撕iOS底层10 -- strong©&weak底层了解
在objc-781的源码里,对应的方法如上。 更多类型可以对应官网上到这个表。
手撕iOS底层12 -- cache_t深入分析
再通过struct bucket_t *buckets();这个方法来获取_buckets属性, 拿到了_buckets属性,就可以通过bucket_t的sel()和imp(Class)方法来获取对应的sel和imp。 由上分析可知,每调用一次方法,就执行一次方法缓存。 在Ma…
手撕iOS底层08 -- isa详解
先贴上经典的isa流程图 ,本章将围绕这张图来阐述内容。 通过LLDB打印输出,对象内存的这个首地址0x001d80010003b59存储的是属性isa。 通过对isa属性与ISA_MASK的值按位与,得出shiftcls的地址,通过对地址打印,这个值是类对象的地址。 进一步反…
下一页
个人成就
文章被点赞
99
文章被阅读
28,328
掘力值
1,080
关注了
46
关注者
239
收藏集
14
关注标签
26
加入于
2016-08-18