一、初始化方法不同 swift文件转sil文件命令 结构体成员有默认值时,编译器自动生成 init(age: Int = 20) 和 init(...
如果在类中使用mutating关键字,编译器会报错'mutating' isn't valid on methods in classes or...
release最终调用objc_object::rootRelease 解读:1.判断是否是taggedPointer,如果是,则返回false...
1. _dyld_start入口函数 在一个类的+ (void)load函数上打断点,查看此时的堆栈信息如下: 可以看到栈底信息是从dyld源码...
1. 动态方法解析 resolveMethod_locked源码 分析:根据传入的cls是否是元类分别调用resolveInstanceMeth...
在objc_msgSend源码解析(一)[http://08643.cn/p/55daf526120d]中最后进入_lookUp...
objc_msgSend源码解析(一)[http://08643.cn/p/55daf526120d]objc_msgSend源...
cache_t源码结构精简后的cache_t源码如下: 可以看到有个重要的函数void incrementOccupied();,字面意思增加占...
1. 类对象获取 根据以上代码可以看到不管是对象调用class方法还是类调用class方法,得到的都是类对象,且不是元类对象,那么class底层...