首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
实现原理
订阅
夏天过去了
更多收藏集
微信扫码分享
微信
新浪微博
QQ
5篇文章 · 0订阅
iOS 组件化 - 私有库创建
索引库好比指针,私有库就好比对象。指针中存放对象的地址,通过地址可以找到对象。 二. 将创建的索引库添加到本地cocoapods仓库 三. 创建模板 四. 将我们自己的代码文件放入指定目录 五. 将制作好的组件上传至GitLab 六. 更改模板文件相关信息 七. 验证 spec…
深入解构objc_msgSend函数的实现
熟悉OC语言的Runtime(运行时)机制以及对象方法调用机制的开发者都知道,所有OC方法调用在编译时都会转化为对C函数objc_msgSend的调用。 系统的Runtime库通过函数objc_msgSend以及OC对象中隐藏的isa数据成员来实现多态和运行时方法查找以及执行。…
浅析weak指针的实现
oc中weak指针主要用于打破循环或者防止循环引用的发生,应用场景还是很广泛的。那么被weak修饰的指针与被指向的对象在底层的运作机制究竟怎样的呢?为什么在对象释放销毁时weak指针能自动置为nil,从而避免了野指针的错误? 当对象被一个weak指针引用时,底层的实现原理就是:…
iOS 从源码深入探究weak的实现 | 掘金技术征文
关于weak的知识我就不再多说,直接开始我们的源码分析之旅 __weak id __week obj1 = obj;编译器的模拟代码 id obj1; obj1 = 0; objc_storeWeak(&obj1, obj); objc_storeWeak(&obj1, 0);…
iOS类方法load和initialize详解
iOS开发中总能看到+load和+initialize的身影,网上对于这两个方法有很多解释,官方也有说明,但有些细节不够清楚,今天我们来详细扒一扒这两个方法. 当类被引用进项目的时候就会执行load函数(在main函数开始执行之前),与这个类是否被用到无关,每个类的load函数…