项目背景 题库作为阔知学堂和ES企培的核心业务功能的一部分,承担考试、练习和作业等形式的答题模块,学员使用频率较多,是有着重要价值的部分。但是题...
__block修饰符的内存管理 当block在栈上时,并不会对__block变量产生强引用 当__block修饰指针变量时,会在成的__Bloc...
block的类型 block有3种类型,可以通过调用class方法或者isa指针查看具体类型,最终都是继承自NSBlock类型 __NSGlob...
block的变量捕获(capture) 为了保证block内部能够正常访问外部的变量,block有个变量捕获机制 当block发生值捕获时,底层...
Block的本质 block本质上也是一个OC对象,它内部也有个isa指针 以上OC代码生成的C++代码为: 其中的生成的C++结构体分别是: ...
KVO 是 Objective-C 对观察者模式的实现。也是 Cocoa Binding 的基础。当被观察对象的某个属性发生更改时,观察者对象会...
一个objc对象如何进行内存布局? 所有父类的成员变量和自己的成员变量都会存放在该对象所对应的存储空间中. 根对象就是NSObject,它的su...
OC中的Category(三) OC中+initialize函数加载和调用 OC对象是在查找方法时判断自己有没有初始化,如果没有就会调用初始化方...
OC中的Category(二) +load函数加载和调用 +load方法会在runtime加载类、分类时调用 每个类、分类的+load,在程序运...