一、初始化方法不同 swift文件轉sil文件命令 結構體成員有默認值時,編譯器自動生成 init(age: Int = 20) 和 init() (帶參和不帶參)的初始化方...
如果在類中使用mutating關鍵字,編譯器會報錯'mutating' isn't valid on methods in classes or class-bound pr...
release最終調用objc_object::rootRelease 解讀:1.判斷是否是taggedPointer,如果是,則返回false2.是否是指針優(yōu)化的isa,如...
1. _dyld_start入口函數 在一個類的+ (void)load函數上打斷點,查看此時的堆棧信息如下: 可以看到棧底信息是從dyld源碼中的_dyld_start函數...
我的Github地址 : Jerry4me, 本文章的demo鏈接 : JRCustomKVODemo 前言 KVO(Key-Value Observing, 鍵值觀察), ...
1. 動態(tài)方法解析 resolveMethod_locked源碼 分析:根據傳入的cls是否是元類分別調用resolveInstanceMethod或者resolveClas...
在objc_msgSend源碼解析(一)[http://www.itdecent.cn/p/55daf526120d]中最后進入_lookUpImpOrForward函數調...
objc_msgSend源碼解析(一)[http://www.itdecent.cn/p/55daf526120d]objc_msgSend源碼解析(二)[https://...
cache_t源碼結構精簡后的cache_t源碼如下: 可以看到有個重要的函數void incrementOccupied();,字面意思增加占用的個數,該函數只對內部成員變...
1. 類對象獲取 根據以上代碼可以看到不管是對象調用class方法還是類調用class方法,得到的都是類對象,且不是元類對象,那么class底層是如何實現的呢? class源...
1. 類的初探 在isa結構解析中,自定義LSPerson 類繼承自NSObject,重寫成C++代碼如下 struct NSObject_IMPL結構體定義如下 typed...
iOS 底層原理 文章匯總[http://www.itdecent.cn/p/412b20d9a0f6] 本文的主要目的是分析 類 & 類的結構,整篇都是圍繞一個類展開的一...
createStackNavigatorhttps://stackoverflow.com/questions/51181965/react-navigation-heade...
Metal Shading Language Metal Shading Language是用來編寫 3D圖形渲染邏輯 和 并行計算核心邏輯的一門編程語言。當使用Metal框...