首页
AI Coding
数据标注
NEW
沸点
课程
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
xq113
掘友等级
获得徽章 5
动态
文章
专栏
沸点
收藏集
关注
作品
赞
62
文章 61
沸点 1
赞
62
返回
|
搜索文章
最新
热门
Runtime-Class底层结构
位域(又叫做位段)其实是一种数据结构,可以把数据以位的形式紧凑的储存,并允许程序员对此结构的位进行操作。有些信息在存储的时候,并不需要占用一个完整字节,有时候只需要占用一个或几个二进制位,比如存放一个BOOL类型的变量时,只需要保存0或1两种状态,此时只需要1个二进制位就能存储…
OC-block底层原理
发现block访问不同的参数会生成不同的代码。 为了保证block内部能够正常访问外部的变量,block有个变量捕获机制。 通过对上述代码的观察发现auto变量auto int a在struct __main_block_impl_0是以int a;的方式保存的。 static…
OC-Category
减小单个文件的代码量。 把不同功能组织到不同的Category。 需要注意的如果是增加属性的话,只会增加属性的声明,并不会生成成员变量和属性的setter和getter方法。 一个类的对象方法和协议是存放在类对象的方法列表和协议列表中的,而类方法则是存放在元类对象的方法列表中,…
KVC&KVO
KVC,俗称“键值编码”,全称是“Key Value Coding”,它是一种可以直接通过字符串的名称(Key)来访问类属性的机制,而不是通过调用Setter或者Getter方法来进行访问。 setValue:forkey可以给对象的所有属性赋值,但是层级只有一级,如果存在多级…
OC对象的本质
在Person_IMPL中包含一个结构体成员NSObject_IVARS,它是NSObject_IMPL类型. 由此可以看出,OC中的对象其实就是通过结构体来实现的。在NSObject_IMPL包含了一个Class类型的成员isa。继续查看Class的定义: 可以发现其实Cla…
ios重签名
iOS签名机制的作用就是保证安装到用户手机上的App都是经过Apple官方允许的。当然,越狱设备除外。 在Apple开发者网站上注册device,添加App ID。 经过以上的一系列操作之后,我们最终就可以拿到ios_development.cer或者ios_distribut…
加密&签名
DES是一种将64bit明文加密成64bit密文的对称密码算法,密钥长度是56bit。其实从规格上来说,密钥的长度其实是64bit,但是每隔7bit会设置一个用于错误检查的bit,因此密钥的长度实质上是56bit。 由于DES每次只能加密64bit的数据,遇到较大数据时需要对D…
arm64汇编
iOS汇编语音有很多种。常见的有8086汇编、arm汇编、x86汇编等等。 iOS的架构从最初的armv6发展到后来的armv7和armv7s,最后发展到现在的arm64,不管是armv6还是后来的armv7,以及arm64都是arm处理器的指令集。armv7和armv7s是真…
Mach-O文件
Mach-O是Mach object的缩写,是Mac\iOS上用来存储程序、库的标准格式。 可以点击官网查看Mach-O的介绍。 Raw segment data,在Load commands中所定义的Segment,在这里都能找到原始数据。 因为两种种架构之间可以共用一些资源…
ios动态调试
动态调试就是在我们的程序运行之时,通过下断点、打印等一系列方式查看参数、返回值、函数调用流程等等。不仅是在iOS开放中需要动态调试,在任何语言的开发过程中都需要用到动态调试 GDB和LLDB: Xcode调试器早期也是使用的GNU开发的GDB调试器,之后也替换成了自研的LLDB…
下一页
个人成就
文章被点赞
74
文章被阅读
33,003
掘力值
989
关注了
35
关注者
35
收藏集
6
关注标签
7
加入于
2019-07-19