簡單介紹 在iOS平臺(tái),所有音頻框架的底層都是基于AudioUnit實(shí)現(xiàn)的起宽。比如熟悉的AVFoundation,AudioToolBox等等济榨,這些框架都封裝了AudioUni...
本文中涉及到的一些編碼,圖像等的具體處理在代碼上的體現(xiàn)可查看:[總結(jié)]視音頻編解碼技術(shù)零基礎(chǔ)學(xué)習(xí)方法 基本概念-顏色 RGB和YUV:圖像常見的兩類數(shù)字化表達(dá)钝诚。 RGB是基于...
http://www.reibang.com/p/455508a7c17b 之前一直有一個(gè)誤區(qū),認(rèn)為協(xié)議和分類中不能用@property 形式聲明屬性凝颇,現(xiàn)在做一下總結(jié): i...
1.什么時(shí)候被調(diào)用 initialize在類第一次接收到消息時(shí)調(diào)用潘拱,也就是objc_msgSend()。 具體的調(diào)用過程如下:initialize方法通過objc_msgSe...
1.什么時(shí)候被調(diào)用 類或者分類一旦被加載到運(yùn)行時(shí)拧略,就會(huì)調(diào)用這個(gè)方法芦岂。具體的調(diào)用邏輯如下:objc的的初始化方法 _objc_init中 ,最后一行 _dyld_objc_no...
attribute((objc_subclassing_restricted)) 標(biāo)識(shí)被修飾的類不能被其他類繼承垫蛆。通常寫在.h文件中類的聲明前 如:attribute((ob...
參考內(nèi)容: Objective-C 消息發(fā)送與轉(zhuǎn)發(fā)機(jī)制原理 首先來看下消息轉(zhuǎn)發(fā)的整體流程圖 當(dāng)一個(gè)對(duì)象的方法被調(diào)用的時(shí)候禽最,首先在對(duì)象所屬的類或者元類中查找方法腺怯,如果沒有則在其...
對(duì)于oc對(duì)象模型,我們清楚在運(yùn)行時(shí)一個(gè)類的對(duì)象可以通過它自身的isa指針找到它所歸屬的類川无,比如一個(gè)NSString類的實(shí)例對(duì)象aaa呛占,調(diào)用它的一個(gè)實(shí)例方法 [aaa sub...
Category如何實(shí)現(xiàn)的? category的初始化 聲明了一個(gè)類懦趋,添加了category晾虑,里邊寫了四個(gè)方法,分別是test仅叫,test1帜篇,test2,test3诫咱,clang...
參考內(nèi)容:Objective-C消息發(fā)送與轉(zhuǎn)發(fā)機(jī)制原理 首先看下objc_msgSend的匯編入口笙隙。 UNWIND _objc_msgSend, NoFrame:定義了一些段...
isa 在objc.h的頭文件,關(guān)于objc_object結(jié)構(gòu)體的聲明中幻锁,我們可以看到isa是一個(gè)Class類型的指針凯亮,指向的是對(duì)象所屬于的類。如果這個(gè)對(duì)象是一個(gè)類對(duì)象哄尔,那么...
OC對(duì)象的內(nèi)存分布簡單來說就是下圖所示 最先是isa指針假消,指向它所屬的類,然后按照繼承鏈由高到低的排列順序岭接,列出他們的成員變量富拗。 所有父類的成員變量和自己的成員變量都會(huì)存放在...
objc_object定義 在OC中每個(gè)對(duì)象都是一個(gè)結(jié)構(gòu)體,結(jié)構(gòu)體中都包含一個(gè)isa_t類型的成員變量鸣戴,位于成員變量的第一位啃沪。 objc_class定義 objc_class...
http://www.reibang.com/p/4fb2d7014e9e iOS類的加載 runtime加載過程簡述 runtime在加載的時(shí)候 ,通過dyld的一些操作...