引言 消息轉(zhuǎn)發(fā)的本質(zhì):向?qū)ο蟀l(fā)送消息,是一個(gè)查找方法的過(guò)程。在前面我們研究過(guò)類,編譯成c++本質(zhì)是一個(gè)叫objc_class的struct指針,...
引言 眾所周知,oc是面向?qū)ο缶幊?,最重要的一個(gè)概念就是類,最終OC中的類都要編譯成c++的,那么OC重的類在c++的底層是怎么呈現(xiàn)的呢?打開(kāi)#...
引言 我們都知道,一個(gè)類有成員變量、對(duì)象方法、類方法,那么它們?cè)诘讓邮侨绾螌?shí)現(xiàn)的呢? 前提 要想研究上面內(nèi)容,首先要知道oc對(duì)象在c++層面對(duì)應(yīng)...
引言 內(nèi)存對(duì)齊是內(nèi)存里面一個(gè)很重要的詞匯,可是大部分開(kāi)發(fā)者對(duì)這個(gè)詞匯的含義都是一知半解。 輸出結(jié)果: 結(jié)果分析: sizeof:對(duì)象類型的內(nèi)存大...
引言 在實(shí)際iOS開(kāi)發(fā)中我,我們經(jīng)常會(huì)調(diào)用alloc 方法,然而對(duì)于alloc方法的底層實(shí)現(xiàn)原理,大部分人并不是很清楚。 一、準(zhǔn)備工作 1、探究...
遞歸是編程語(yǔ)言中一種較為常見(jiàn)的算法,一個(gè)函數(shù)直接或間接調(diào)用自身的一種方法。當(dāng)調(diào)用一次函數(shù)可能解決不了當(dāng)前的問(wèn)題和需求,需要重復(fù)調(diào)用,一直到達(dá)成目...
static static分兩種情況,修飾局部變量和全局變量。(1)修飾局部變量在整個(gè)程序運(yùn)行的過(guò)程中局部變量只初始化一次,只有一份內(nèi)存,作用域...
宏定義的常見(jiàn)用法:定義一段代碼抽成宏,或指定字符串抽成宏const(常量):當(dāng)有字符串常量的時(shí)候,蘋(píng)果推薦我們使用const,蘋(píng)果經(jīng)常把常用的字...
1.id在objc.h中定義 從上面可以看出,id的本質(zhì)是struct objc_object結(jié)構(gòu)體指針,可以指向任何OC對(duì)象。注意:這里說(shuō)的是...