1. 前言 Xcode編譯依賴于Clang編譯器,由于clang是LLVM的一部分膝藕,而LLVM(構(gòu)架編譯器(compiler)的框架系統(tǒng)嚣艇,以C++編寫而成承冰,用于優(yōu)化以任意程序...
1. 前言 Xcode編譯依賴于Clang編譯器,由于clang是LLVM的一部分膝藕,而LLVM(構(gòu)架編譯器(compiler)的框架系統(tǒng)嚣艇,以C++編寫而成承冰,用于優(yōu)化以任意程序...
通過前面的分析,我們對于類的繼承以及方法的存儲位置有了一定的了解,那么這篇文章我們主要來分析兩個比較常見的面試題,具體如下: 關(guān)于iskindOfClass & isMemb...
通過上一篇文章對isa的分析,我們知道了所有的對象都包含isa,并且isa存儲了類的相關(guān)信息,所以這篇文章我們主要通過isa來引出類的底層結(jié)構(gòu)以及一些信息 代碼分析 創(chuàng)建對象...
isa對于大家來說應(yīng)該并不陌生,不管是各個公司的面試題或者說是平時的開發(fā)當(dāng)中都會經(jīng)常被提及,另外在我們之前對alloc的源碼分析時也發(fā)現(xiàn),最后一步obj->initInsta...
既然是底層原理系列,內(nèi)存肯定是我們繞不過的一個知識點,今天這篇文章主要是通過源碼來探索下OC底層是怎么進行內(nèi)存對齊的 既然要探索內(nèi)存相關(guān)的東西,那么首先我們要先掌握獲取內(nèi)存的...
alloc源碼分析 本次探索主要基于objc4-781源碼 進行分析 首先,通過斷點調(diào)試源碼的方式繪制自定義對象執(zhí)行alloc操作的整體流程如下圖所示: 接下來,我們看下每一...
ViewController有一個方法是addChildViewController,但是食零,我并不知道如何的管理這個添加上去的子類Controller困乒。所以查找了資料,學(xué)習(xí)了...
公司里又一個聊得來的小伙伴離職了,百感交集:一方面為他能找到更順心的工作感到高興吱抚;一方面又感慨7年前就下定決定要離職的我竟然到現(xiàn)在沒挪動一步百宇。 關(guān)于職業(yè)規(guī)劃和目標(biāo) 曾經(jīng)剛從學(xué)...