首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
RoyCao
掘友等级
iOS开发
|
Bytedance
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
583
文章 580
沸点 3
赞
583
返回
|
搜索文章
最新
热门
汇编(五) -- 函数的参数和返回值
最近准备学习汇编,然后在B站上看到叫iOS小贤的作者发的视频挺不错,打算跟着学,文章是看视频的笔记,最后有原视频链接,想看视频的可以看看通过链接查看视频。 ARM64下,函数的参数通常情况下是存放在X0到X7(W0到W7)这8个寄存器里面的。如果超过8个参数,就会入栈。 编译器…
汇编(四) -- bl&ret
最近准备学习汇编,然后在B站上看到叫iOS小贤的作者发的视频挺不错,打算跟着学,文章是看视频的笔记,最后有原视频链接,想看视频的可以看看通过链接查看视频。 然后在sum处打断点,run起来。 bl跳转到sum函数中去,跳到sum函数中后一旦返回,就要返回到0x102d16974…
汇编(三) -- 栈(sp\fp寄存器)
最近准备学习汇编,然后在B站上看到叫iOS小贤的作者发的视频挺不错,打算跟着学,文章是看视频的笔记,最后有原视频链接,想看视频的可以看看通过链接查看视频。 **注:**用户主动请求而划分出来的内存区域,叫做 Heap(堆)。它由起始地址开始,从低位(地址)向高位(地址)增长。H…
汇编(二) -- 寄存器
最近准备学习汇编,然后在B站上看到叫iOS小贤的作者发的视频挺不错,打算跟着学,文章是看视频的笔记,最后有原视频链接,想看视频的可以看看通过链接查看视频。 那么w0 到 w28 这些是32位的. 因为64位CPU可以兼容32位.所以可以只使用64位寄存器的低32位. **注:*…
汇编(一) -- 初识汇编
最近准备学习汇编,然后在B站上看到叫iOS小贤的作者发的视频挺不错,打算跟着学,文章是看视频的笔记,最后有原视频链接,想看视频的可以看看通过链接查看视频。 由0和1组成的机器指令. **注:**机器指令最终转换成电信号。 **注:**高级语言根据不同的平台编译成对应的汇编语言,…
Swift三部曲(一):指针的使用
大部分情况下做Swift开发是不需要使用指针的,也不建议使用,但是有时候写比较底层的东西就需要了。最近一段时间恰好我在写的一些库的需要用到指针,但是Swift关于指针的使用并没有很详细的文档,导致写起代码来十分费劲,所以总结了一下。Runtime的文章很多,但是Swift的很少…
Aspect -- 纯Swift写的AOP库
主要难点是Swift中拿到Selector以及Block的NSInvocation和NSMethodSignature, 感兴趣的可以看看。 Aspect is a lightweight, pure-Swift library for for aspect oriented …
基于LLVM开发Clang插件进行代码风格检查
这个很多人都做过,文章也挺多的,我也是参考别人文章的,不过直到真正实现还是踩了许多坑,所以记录下来,或许对其他人有帮助。其实LLVM和Clang我还没有好好研究过,之前大部分都是用Swift开发,代码风格检查都是用的Swiftlint,所以这次选择OC的代码检查作为开始,通过实…
Swift中依赖注入的解耦策略
今天我们将深入研究Swift中的依赖注入,这是软件开发中最重要的技术之一,也是许多编程语言中使用频繁的概念。 具体来说,我们将探索可以使用的策略/模式,包括Swift中的Service Locator模式。 依赖注入背后的意图是通过让一个对象提供另一个对象的依赖关系来解耦。它用…
iOS中Block实现原理的全面分析
__blockTest_block_impl_0是Block的C++实现,是一个结构体,从命名可以看出表示blockTest中的第一个(0)Block。通常包含两个成员变量__block_impl impl,__blockTest_block_desc_0* Desc和一个构造…
下一页
个人成就
文章被点赞
412
文章被阅读
115,931
掘力值
2,647
关注了
45
关注者
654
收藏集
0
关注标签
1
加入于
2018-07-30