概述 接著上一篇文章[http://www.itdecent.cn/p/cf9f202ba041],我們繼續(xù)探索消息發(fā)送的后續(xù)流程 消息轉(zhuǎn)發(fā)(...
找到objc_msgSend 調(diào)用方法,打斷點(diǎn) 通過匯編發(fā)現(xiàn)調(diào)用 , ,發(fā)現(xiàn) 源碼里面實(shí)現(xiàn) 通過 源碼找到 的實(shí)現(xiàn)入口,其中不同的架構(gòu)有不同的實(shí)...
cache數(shù)據(jù)結(jié)構(gòu) 我們先從objc源碼查看一下,由于結(jié)構(gòu)體里面內(nèi)容太多,看一下簡化版 1.cache_t里面保存了兩個(gè)成員,_bucketsA...
isa 流程探索 第一步:新建兩個(gè)類QHPerson 和QHTearcher,其中QHTearcher繼承QHPerson,然后我們做如下操作:...
oc類、對象探索 首先我們創(chuàng)建一個(gè)oc類 然后用clang編譯QHPerson.m文件 會生成一個(gè) 文件,打開后對 進(jìn)行分析, 我們發(fā)現(xiàn) 類在底...
影響OC對象內(nèi)存大小的因素 數(shù)據(jù)類型內(nèi)存大?。?代碼分析 通過class_getInstanceSize獲取實(shí)例的大小, 根據(jù)我上面標(biāo)注的結(jié)果是...
概述 我們在這樣alloc一個(gè)對象時(shí)oc底層究竟做了啥 QHPerson *p = [QHPerson alloc] ;要想分析我們必須先拿到o...
概述 KVO官網(wǎng)[https://developer.apple.com/library/archive/documentation/Cocoa...
成員變量、實(shí)例變量、屬性 成員變量:不會自動生成get、set方法,成員變量不能用點(diǎn)語法調(diào)用,因?yàn)闆]有set和get方法,只能使用->調(diào)用。 屬...