問題 繼續回答昨天的問題第二問。 我們知道,在使用 block 的時候,為了避免產生循環引用,通常需要使用 weakSelf 與 strongSelf,寫下面這樣的代碼: 那 ...
題目:找出兩個 UIView 的最近的公共 View,如果不存在,則輸出 nil 。 分析:這其實是數據結構里面的找最近公共祖先的問題。 一個 UIViewController 中的所有 view 之間的關系其實可以看成一顆樹,UIViewController 的 view 變量是這顆樹的根節點,其它的 view 都是根節點的直接或間接子節點。 所以我們可以通過 view 的 superview ...
2016-12-08 08:32 0 1932 推薦指數:
問題 繼續回答昨天的問題第二問。 我們知道,在使用 block 的時候,為了避免產生循環引用,通常需要使用 weakSelf 與 strongSelf,寫下面這樣的代碼: 那 ...
問題 weak 變量在引用計數為0時,會被自動設置成 nil,這個特性是如何實現的? 答案 在 Friday QA 上,有一期專門介紹 weak 的實現原理。https://mikeash.co ...
問題 我們知道,在使用 block 的時候,為了避免產生循環引用,通常需要使用 weakSelf 與 strongSelf,寫下面這樣的代碼: 那么請問:什么時候在 block ...
一個 Objective-C 對象的內存結構是怎樣的? 如果把類的實例看成一個C語言的結構體(struct),它首先包含的是一個 isa 指針,而類的其它成員變量依次排列在結構體中。排 ...
iOS經典面試題 前言 寫這篇文章的目的是因為前兩天同學想應聘iOS開發,從網上找了iOS面試題和答案讓我幫忙看看。我掃了一眼,倒吸了一口冷氣,仔細一看,氣的發抖。整篇題目30多個沒有一個答案是對的,總結這篇面試題的作者對iOS機制根本就是一知半解就敢發到網上 ...
題目:給出下面迷宮,0表示通路,1表示障礙物,請找出入口(0,0)至出口(7,7)的路 思路: 1.設置三個指針,last ,now,next 起始位置都設置在入口。 2.實現一個尋找候選點的方法,候選點中不應該包含當前點的位置 3.判斷是否有候選點,且是否為出口。 4.如果沒有候選 ...
1.Object-c的類可以多重繼承么?可以實現多個接口么?Category是什么?重寫一個類的方式用繼承好還是分類好?為什么? 答:不可以,可以實現多個接口;category是分類,,一般情況下分 ...
1.簡述OC中內存管理機制. 答:內存管理機制:使用引用計數管理,分為ARC和MRC,MRC需要程序員自己管理內存,ARC則不需要.但是並不是所有對象在ARC環境下均不需要管理內存,子線程和循 ...