iOS 面試 - 基礎(chǔ)

編譯鏈接的過程?


你知道哪些編碼方式宵睦?


程序在運(yùn)行時(shí)操作系統(tǒng)除了分配內(nèi)存空間還有什么厢绝?


內(nèi)核態(tài)和用戶態(tài)的區(qū)別芭商?


堆和棧的區(qū)別逾滥,工程項(xiàng)目中的哪些數(shù)據(jù)是儲(chǔ)存在堆哪些在棧中

1它呀、棧(stack):方法調(diào)用涕侈,局部變量等神妹,是連續(xù)的拳昌,高地址往低地址擴(kuò)展趴乡。

2荐吉、堆(heap):通過alloc等分配的對(duì)象焙糟,是離散的,低地址往高地址擴(kuò)展样屠,需要我們手動(dòng)控制穿撮。

3缺脉、未初始化數(shù)據(jù)(bss):未初始化的全局變量等。

4悦穿、已初始化數(shù)據(jù)(data):已初始化的全局變量等攻礼。

5、代碼段(text):程序代碼栗柒。

靜態(tài)方法是否能被重寫礁扮?


OOA、OOD瞬沦、OOP太伊?

OOA(Object Oriented Analysis):面向?qū)ο蠓治?/p>

OOD(Object Oriented Design):面向?qū)ο笤O(shè)計(jì)

OOP(Object Oriented Programming):面向?qū)ο缶幊?/p>

OC中對(duì)象的結(jié)構(gòu)


OC中的內(nèi)省逛钻?

對(duì)象在運(yùn)行時(shí)獲取其類型的能力稱為內(nèi)省僚焦。

OC運(yùn)行時(shí)內(nèi)省的4個(gè)方法:

判斷對(duì)象類型:

? ? ? ? 1、-(BOOL) isKindOfClass: 判斷是否是這個(gè)類或者這個(gè)類的子類的實(shí)例

? ? ? ? 2曙痘、-(BOOL) isMemberOfClass: 判斷是否是這個(gè)類的實(shí)例

判斷對(duì)象/類是否有這個(gè)方法:

? ? ? ? 1芳悲、-(BOOL) respondsToSelector: 判讀實(shí)例是否有這樣方法

? ? ? ? 2、+(BOOL) instancesRespondToSelector: 判斷類是否有這個(gè)方法

id和nill代表什么(nill和NULL的區(qū)別)

1边坤、id 聲明的對(duì)象具有運(yùn)行時(shí)的特性名扛,即可以指向任意類型的Objcetive-C的對(duì)象。

2惩嘉、nil:空指針罢洲,不指向任何位置的指針。

3文黎、NULL:指針存儲(chǔ)的地址是一個(gè)空地址惹苗。

向一個(gè)nill對(duì)象發(fā)送消息會(huì)發(fā)生什么?

首先需要明白2個(gè)問題:

? ??????什么是isa指針耸峭?

? ??????消息傳遞機(jī)制桩蓉?

1、isa指針是用于對(duì)象指向類對(duì)象劳闹,類對(duì)象指向元類對(duì)象的一個(gè)指針院究。而類對(duì)象和元類對(duì)象中又分別存放對(duì)象方法和類方法。 在消息傳遞機(jī)制中本涕,就是通過isa指針來尋找到方法的實(shí)際調(diào)用地址的业汰。

2、objc在向一個(gè)對(duì)象發(fā)送消息時(shí)菩颖,runtime庫(kù)會(huì)根據(jù)對(duì)象的isa指針找到該對(duì)象實(shí)際所屬的類样漆,然后在該類中的方法列表以及其父類方法列表中尋找方法運(yùn)行,然后在發(fā)送消息的時(shí)候晦闰,objc_msgSend方法不會(huì)返回值放祟,所謂的返回內(nèi)容都是具體調(diào)用時(shí)執(zhí)行的鳍怨。 那么,回到本題跪妥,如果向一個(gè)nil對(duì)象發(fā)送消息鞋喇,首先在尋找對(duì)象的isa指針時(shí)就是0地址返回了,所以不會(huì)出現(xiàn)任何錯(cuò)誤眉撵。 ?

多態(tài)

不同對(duì)象以自己的方式響應(yīng)相同的消息的能力叫做多態(tài)侦香。

@property的本質(zhì)是什么?

@property = ivar + getter + setter;

“屬性” (property)有兩大概念:ivar(實(shí)例變量)执桌、getter+setter(存取方法)

“屬性” (property)作為 Objective-C 的一項(xiàng)特性鄙皇,主要的作用就在于封裝對(duì)象中的數(shù)據(jù)。 Objective-C 對(duì)象通常會(huì)把其所需要的數(shù)據(jù)保存為各種實(shí)例變量仰挣。實(shí)例變量一般通過“存取方法”(access method)來訪問伴逸。其中,“獲取方法” (getter)用于讀取變量值膘壶,而“設(shè)置方法” (setter)用于寫入變量值错蝴。

?@property中有哪些屬性關(guān)鍵字?

1.原子性--- atomic颓芭、nonatomic特質(zhì)

2.讀/寫權(quán)限---readwrite(讀寫)顷锰、readonly (只讀)

3.內(nèi)存管理語(yǔ)義---assign、strong亡问、 weak官紫、unsafe_unretained、copy

4.方法名---getter=<name> 州藕、setter=<name>

5.不常用的:nonnull,null_resettable,nullable

解釋屬性修飾關(guān)鍵詞的作用

1束世、 readwrite 是可讀可寫特性。需要生成getter方法和setter方法床玻。

?2)毁涉、readonly 是只讀特性。只會(huì)生成getter方法锈死,不會(huì)生成setter方法贫堰,不希望屬性在類外改變。

?3待牵、assign 是賦值特性其屏。setter方法將傳入?yún)?shù)賦值給實(shí)例變量;僅設(shè)置變量時(shí),assign用于基本數(shù)據(jù)類型。

?4缨该、 retain(MRC)/strong(ARC) 表示持有特性偎行。setter方法將傳入?yún)?shù)先保留,再賦值,傳入?yún)?shù)的retaincount會(huì)+1睦优。?

5、copy 表示拷貝特性壮不。setter方法將傳入對(duì)象復(fù)制一份汗盘,需要完全一份新的變量時(shí)。?

6询一、nonatomic 非原子操作隐孽。決定編譯器生成的setter和getter方法是否是原子操作,atomic表示多線程安全(非絕對(duì))健蕊,一般使用nonatomic菱阵,效率高。

淺拷貝和深拷貝的區(qū)別

淺拷貝:只復(fù)制指向?qū)ο蟮闹羔標豕Γ粡?fù)制引用對(duì)象本身晴及。

深拷貝:復(fù)制引用對(duì)象本身。內(nèi)存中存在了兩份獨(dú)立對(duì)象本身嫡锌,當(dāng)修改A時(shí)虑稼,A_copy不變。

assign势木、weak

1蛛倦、ARC中,有可能出現(xiàn)循環(huán)引用的時(shí)候啦桌,讓一短使用weak溯壶。沒必要強(qiáng)引用的時(shí)候,使用weak甫男,IBOutlet控件屬性且改,當(dāng)然也可以用strong。

2查剖、weak钾虐、assign修飾的屬性指向一個(gè)對(duì)象時(shí),都不會(huì)增加對(duì)象的引用計(jì)數(shù)笋庄。然而在所指的對(duì)象被釋放掉時(shí)效扫,weak屬性值會(huì)被自動(dòng)置為nil,而assign屬性不會(huì)直砂。

3菌仁、assign可以用于非OC對(duì)象及基本類型,weak必須用于OC對(duì)象静暂。

copy和strong的區(qū)別


weak原理

詳情:

1济丘、weak其實(shí)是系統(tǒng)通過一個(gè)hash表來實(shí)現(xiàn)對(duì)象的弱引用。

2、runtime維護(hù)了一個(gè)weak表摹迷,用于存儲(chǔ)指向某個(gè)對(duì)象的所有weak 指針疟赊。weak表其實(shí)是一個(gè)hash表,Key是所有對(duì)象的地址峡碉,Value是weak指針 的地址(這個(gè)地址的值是所有對(duì)象指針的地址)數(shù)組近哟。

原理:

1、初始化時(shí):runtime會(huì)調(diào)用objc_initWeak函數(shù)鲫寄,初始化一個(gè)新的weak指針指向?qū)ο蟮牡刂?/p>

2吉执、添加引用時(shí):objc_initWeak函數(shù)會(huì)調(diào)用storeWeak(),StoreWeak()的作用是更新指針指向地来,創(chuàng)建對(duì)應(yīng)的弱引用表

3戳玫、釋放時(shí):調(diào)用clearDeallocting()。clearDeallocting()首先根據(jù)對(duì)象地址獲取所有weak指針地址的數(shù)組未斑,然后遍歷這個(gè)數(shù)組把其中的數(shù)據(jù)設(shè)為 nil咕宿,最后把這個(gè)entry從weak表中刪除,最后清理對(duì)象的記錄

為什么不可變對(duì)象要用copy


iOS中的NSCopying協(xié)議蜡秽,copy荠列、mutableCopy的區(qū)別

- (id)copyWithZone:(NSZone *)zone;

copy 返回的是不可變對(duì)象(immutableObject);如果用copy返回值調(diào)用mutable對(duì)象的方法就會(huì)crash载城。

?mutableCopy 返回的是可變對(duì)象(mutableObject)肌似。

1、非集合類對(duì)象

????????對(duì)不可變對(duì)象進(jìn)行copy操作诉瓦,是指針復(fù)制川队,mutableCopy操作是內(nèi)容復(fù)制; 對(duì)可變對(duì)象進(jìn)行copy和mutableCopy都是內(nèi)容復(fù)制睬澡。

2固额、集合類對(duì)象

????????對(duì)不可變對(duì)象進(jìn)行copy操作,是指針復(fù)制煞聪,mutableCopy操作是內(nèi)容復(fù)制斗躏; 對(duì)可變對(duì)象進(jìn)行copy和mutableCopy都是內(nèi)容復(fù)制。但是:集合對(duì)象的內(nèi)容復(fù)制僅限于對(duì)象本身昔脯,對(duì)集合內(nèi)的對(duì)象元素仍然是指針復(fù)制啄糙。(即單層內(nèi)容復(fù)制)

總結(jié):只有對(duì)不可變對(duì)象進(jìn)行copy操作是指針復(fù)制(淺復(fù)制),其它情況都是內(nèi)容復(fù)制(深復(fù)制)云稚。

如果屬性完全不加修飾詞如weak隧饼,atomic,系統(tǒng)會(huì)怎么處理

對(duì)象:@property (atomic, strong, readwrite) xxx

非對(duì)象: @property (atomic, assign, readwrite) xxx

內(nèi)存管理

OC的內(nèi)存管理主要有三種方式ARC(自動(dòng)內(nèi)存計(jì)數(shù))静陈、MRC(手動(dòng)內(nèi)存計(jì)數(shù))燕雁、內(nèi)存池诞丽。

1、自動(dòng)內(nèi)存計(jì)數(shù)ARC:由Xcode自動(dòng)在App編譯階段拐格,在代碼中添加內(nèi)存管理代碼僧免。

2、 手動(dòng)內(nèi)存計(jì)數(shù)MRC:遵循內(nèi)存誰(shuí)申請(qǐng)捏浊、誰(shuí)釋放猬膨;誰(shuí)添加,誰(shuí)釋放的原則呛伴。

3、內(nèi)存釋放池Release Pool:把需要釋放的內(nèi)存統(tǒng)一放在一個(gè)池子中谒所,當(dāng)池子被抽干后(drain)热康,池子中所有的內(nèi)存空間也被自動(dòng)釋放掉。內(nèi)存池的釋放操作分為自動(dòng)和手動(dòng)劣领。自動(dòng)釋放受runloop機(jī)制影響姐军。

簡(jiǎn)述下block的實(shí)現(xiàn)

閉包(block):閉包就是獲取其它函數(shù)局部變量的匿名函數(shù)。

Block的循環(huán)引用尖淘、如何解決奕锌、原理

1、在block內(nèi)部使用外部指針且會(huì)造成循環(huán)引用情況下村生,需要用__week修飾外部指針:

? ??????__weak typeof(self) weakSelf = self;

2惊暴、在block內(nèi)部如果調(diào)用了延時(shí)函數(shù)還使用弱指針會(huì)取不到該指針,因?yàn)橐呀?jīng)被銷毀了趁桃,需要在block內(nèi)部再將弱指針重新強(qiáng)引用一下辽话。

? ??????__strong typeof(self) strongSelf = weakSelf;

3、如果需要在block內(nèi)部改變外部棧區(qū)變量的話卫病,需要在用__block修飾外部變量油啤。

說說你對(duì)內(nèi)存泄漏的看法,追問蟀苛,block為什么容易引起內(nèi)存泄漏益咬?


對(duì)于block理解,MRC和ARC下有什么區(qū)別帜平,使用注意事項(xiàng)


Block和函數(shù)指針的區(qū)別幽告?


[object copy]是淺拷貝還是深拷貝?為什么是淺拷貝裆甩?copy是實(shí)現(xiàn)了哪個(gè)協(xié)議评腺?


對(duì)MRC和ARC的理解


談對(duì)引用計(jì)數(shù)的理解


談?wù)剬?duì)自動(dòng)釋放池的理解

自動(dòng)釋放池:以棧的形式實(shí)現(xiàn),當(dāng)你創(chuàng)建一個(gè)新的自動(dòng)釋放池時(shí)淑掌,它將被添加到棧頂蒿讥。當(dāng)一個(gè)對(duì)象收到發(fā)送 autorelease 消息時(shí),它被添加到當(dāng)前線程的處于棧頂?shù)淖詣?dòng)釋放池中,當(dāng)自動(dòng)釋放池被回收時(shí)芋绸,它們從棧中被刪除媒殉, 且會(huì)給池子里面所有的對(duì)象都會(huì)做一次 release 操作。

主要通過下列三個(gè)函數(shù)完成:

????????objc_autoreleasepoolPush

????????objc_autoreleasepoolPop

????????objc_autorelease

自動(dòng)釋放池在MRC和ARC區(qū)別


多層自動(dòng)釋放池嵌套的對(duì)象在哪一層釋放

autorelease變量什么時(shí)候釋放摔敛?

1廷蓉、手動(dòng)添加的是大括號(hào)結(jié)束的時(shí)候釋放

2、系統(tǒng)自動(dòng)釋放是在當(dāng)前runloop循環(huán)結(jié)束的時(shí)候

那子線程中的autorelease變量什么時(shí)候釋放马昙?


子線程里面桃犬,需要加autoreleasepool嗎


category和extension區(qū)別,系統(tǒng)如何底層實(shí)現(xiàn)category


單例和全局變量的區(qū)別行楞。


iOS 為什么沒有類似于 Java 和 C 之類的 “Builder” 的構(gòu)造模式


Block和Protocol的區(qū)別攒暇,Block是為了解決什么問題而使用的


OC的反射機(jī)制

1、Class的反射

? ??????FOUNDATION_EXPORT NSString *NSStringFromClass(Class aClass);

????????FOUNDATION_EXPORT Class __nullable NSClassFromString(NSString *aClassName);

2子房、SEL的反射

????????FOUNDATION_EXPORT NSString *NSStringFromSelector(SEL aSelector);

? ??????FOUNDATION_EXPORT SEL NSSelectorFromString(NSString *aSelectorName);

3形用、Protocol

? ??????FOUNDATION_EXPORT NSString *NSStringFromProtocol(Protocol *proto) NS_AVAILABLE(10_5, 2_0);

? ??????FOUNDATION_EXPORT Protocol * __nullable NSProtocolFromString(NSString *namestr) NS_AVAILABLE(10_5, 2_0);

實(shí)例:

根據(jù)后臺(tái)推送過來的數(shù)據(jù),進(jìn)行動(dòng)態(tài)頁(yè)面跳轉(zhuǎn)证杭,跳轉(zhuǎn)到頁(yè)面后根據(jù)返回到數(shù)據(jù)執(zhí)行對(duì)應(yīng)的操作田度。


iOS是如何進(jìn)行資源管理的


一張圖片的內(nèi)存占用大小是由什么決定的


索引有什么用?

創(chuàng)建索引可以大大提高系統(tǒng)的性能解愤。

1镇饺、通過創(chuàng)建唯一性索引,可以保證數(shù)據(jù)庫(kù)表中每一行數(shù)據(jù)的唯一性送讲。

2兰怠、可以大大加快數(shù)據(jù)的檢索速度,這也是創(chuàng)建索引的最主要的原因李茫。

3揭保、可以加速表和表之間的連接,特別是在實(shí)現(xiàn)數(shù)據(jù)的參考完整性方面特別有意義魄宏。

4秸侣、在使用分組和排序子句進(jìn)行數(shù)據(jù)檢索時(shí),同樣可以顯著減少查詢中分組和排序的時(shí)間宠互。

5味榛、通過使用索引,可以在查詢的過程中予跌,使用優(yōu)化隱藏器搏色,提高系統(tǒng)的性能。

存一個(gè)通訊錄券册,包括增刪改查频轿,用什么數(shù)據(jù)結(jié)構(gòu)


isEquel和hash的關(guān)系


bitmap的結(jié)構(gòu)


數(shù)組的淺拷貝與深拷貝


字典的工作原理 垂涯?怎100w個(gè)中是怎么快速去取value?


數(shù)據(jù)庫(kù)


JSON航邢、XML

1耕赘、JSON與XML的區(qū)別:

(1)可讀性方面:基本相同,XML的可讀性比較好膳殷;

(2)可擴(kuò)展性方面:都具有良好的擴(kuò)展性操骡;

(3)編碼難度方面:相對(duì)而言,JSON的編碼比較容易赚窃;

(4)解碼難度:JSON的解碼難度基本為零册招,XML需要考慮子節(jié)點(diǎn)和父節(jié)點(diǎn);

(5)數(shù)據(jù)體積方面:JSON相對(duì)于XML來講勒极,數(shù)據(jù)體積小是掰,傳遞的速度比較快;

(6)數(shù)據(jù)交互方面:JSON與javascript的交互更加方便河质,更容易解析處理,更好的數(shù)據(jù)交互震叙;

(7)數(shù)據(jù)描述方面:XML對(duì)數(shù)據(jù)描述性比較好

(8)傳輸速度方面:JSON的速度遠(yuǎn)遠(yuǎn)快于XML掀鹅。

2、JSON與XML底層實(shí)現(xiàn)原理:

(1)JSON底層原理:遍歷字符串中的字符媒楼,最終根據(jù)格式規(guī)定的特殊字符乐尊,比如{}、[]划址、:等進(jìn)行區(qū)分扔嵌,{}號(hào)表示字典,[]號(hào)表示數(shù)組夺颤,:號(hào)是字典的鍵和值的分水嶺痢缎,最終仍是將JSON轉(zhuǎn)化為字典,只不過字典中的值可能是“字典世澜、數(shù)組或者字符串而已”独旷。

(2)XML底層原理:XML解析常用的解析方法有兩種:DOM解析和SAX解析;DOM采用的是樹形結(jié)構(gòu)的方式訪問XML文檔寥裂,而SAX采用的是事件模型嵌洼;DOM解析把XML文檔轉(zhuǎn)化為一個(gè)包含其內(nèi)容的樹,并可以對(duì)樹進(jìn)行遍歷封恰,使用DOM解析器的時(shí)候需要處理整個(gè)XML文檔麻养,所以對(duì)內(nèi)存和性能的要求比較高;SAX在解析XML文檔的時(shí)候可以觸發(fā)一系列的事件诺舔,當(dāng)發(fā)現(xiàn)給定的tag的時(shí)候鳖昌,他可以激活一個(gè)回調(diào)方法备畦,告訴該方法指定的標(biāo)簽已經(jīng)找到,SAX對(duì)內(nèi)存的要求通常會(huì)比較低遗遵,因?yàn)樗岄_發(fā)人員自己來決定所要處理的tag萍恕,特別是當(dāng)開發(fā)人員只需要處理文檔中所包含部分?jǐn)?shù)據(jù)時(shí),SAX這種擴(kuò)展能力得到了更好的體現(xiàn)车要。




最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末允粤,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子翼岁,更是在濱河造成了極大的恐慌类垫,老刑警劉巖,帶你破解...
    沈念sama閱讀 210,914評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件琅坡,死亡現(xiàn)場(chǎng)離奇詭異悉患,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)榆俺,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,935評(píng)論 2 383
  • 文/潘曉璐 我一進(jìn)店門售躁,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人茴晋,你說我怎么就攤上這事陪捷。” “怎么了诺擅?”我有些...
    開封第一講書人閱讀 156,531評(píng)論 0 345
  • 文/不壞的土叔 我叫張陵市袖,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我烁涌,道長(zhǎng)苍碟,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,309評(píng)論 1 282
  • 正文 為了忘掉前任撮执,我火速辦了婚禮微峰,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘抒钱。我一直安慰自己县忌,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,381評(píng)論 5 384
  • 文/花漫 我一把揭開白布继效。 她就那樣靜靜地躺著症杏,像睡著了一般。 火紅的嫁衣襯著肌膚如雪瑞信。 梳的紋絲不亂的頭發(fā)上厉颤,一...
    開封第一講書人閱讀 49,730評(píng)論 1 289
  • 那天,我揣著相機(jī)與錄音凡简,去河邊找鬼逼友。 笑死精肃,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的帜乞。 我是一名探鬼主播司抱,決...
    沈念sama閱讀 38,882評(píng)論 3 404
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼黎烈!你這毒婦竟也來了习柠?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,643評(píng)論 0 266
  • 序言:老撾萬榮一對(duì)情侶失蹤照棋,失蹤者是張志新(化名)和其女友劉穎资溃,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體烈炭,經(jīng)...
    沈念sama閱讀 44,095評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡溶锭,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,448評(píng)論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了符隙。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片趴捅。...
    茶點(diǎn)故事閱讀 38,566評(píng)論 1 339
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖霹疫,靈堂內(nèi)的尸體忽然破棺而出拱绑,到底是詐尸還是另有隱情,我是刑警寧澤更米,帶...
    沈念sama閱讀 34,253評(píng)論 4 328
  • 正文 年R本政府宣布欺栗,位于F島的核電站毫痕,受9級(jí)特大地震影響征峦,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜消请,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,829評(píng)論 3 312
  • 文/蒙蒙 一栏笆、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧臊泰,春花似錦蛉加、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,715評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至需频,卻和暖如春丁眼,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背昭殉。 一陣腳步聲響...
    開封第一講書人閱讀 31,945評(píng)論 1 264
  • 我被黑心中介騙來泰國(guó)打工苞七, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留藐守,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,248評(píng)論 2 360
  • 正文 我出身青樓蹂风,卻偏偏與公主長(zhǎng)得像卢厂,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子惠啄,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,440評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容

  • Swift1> Swift和OC的區(qū)別1.1> Swift沒有地址/指針的概念1.2> 泛型1.3> 類型嚴(yán)謹(jǐn) 對(duì)...
    cosWriter閱讀 11,090評(píng)論 1 32
  • 1慎恒、簡(jiǎn)述OC中內(nèi)存管理機(jī)制。與retain配對(duì)使用的方法是dealloc還是release礁阁,為什么巧号?需要與allo...
    韋魯斯閱讀 2,132評(píng)論 6 25
  • 內(nèi)存管理 簡(jiǎn)述OC中內(nèi)存管理機(jī)制。與retain配對(duì)使用的方法是dealloc還是release姥闭,為什么丹鸿?需要與a...
    丶逐漸閱讀 1,950評(píng)論 1 16
  • 1.簡(jiǎn)述OC中內(nèi)存管理機(jī)制 答:內(nèi)存管理機(jī)制:使用引用計(jì)數(shù)管理,分為ARC和MRC,MRC需要程序員自己管理內(nèi)存,...
    Manba_小洛閱讀 538評(píng)論 0 2
  • 昨天在大堤上散步,偶遇蜂農(nóng)棚品,端詳些許靠欢。他仔細(xì)地打開蜂箱,一片片檢查著小東西們铜跑,把幾近充盈的板巢挑出來门怪,估計(jì)是拿去搖...
    靜觀風(fēng)閱讀 225評(píng)論 0 0