問題 繼續回答昨天的問題第二問。 我們知道,在使用 block 的時候,為了避免產生循環引用,通常需要使用 weakSelf 與 strongSelf,寫下面這樣的代碼: 那 ...
問題 weak 變量在引用計數為 時,會被自動設置成 nil,這個特性是如何實現的 答案 在 Friday QA 上,有一期專門介紹 weak 的實現原理。https: mikeash.com pyblog friday qa zeroing weak references in objective c.html Objective C高級編程 一書中也介紹了相關的內容。 簡單來說,系統有一個全局 ...
2016-12-08 08:40 0 2866 推薦指數:
問題 繼續回答昨天的問題第二問。 我們知道,在使用 block 的時候,為了避免產生循環引用,通常需要使用 weakSelf 與 strongSelf,寫下面這樣的代碼: 那 ...
題目:找出兩個 UIView 的最近的公共 View,如果不存在,則輸出 nil 。 分析:這其實是數據結構里面的找最近公共祖先的問題。 一個 UIViewController 中的所有 vie ...
問題 我們知道,在使用 block 的時候,為了避免產生循環引用,通常需要使用 weakSelf 與 strongSelf,寫下面這樣的代碼: 那么請問:什么時候在 block 里面用 self,不需要使用 weak self? 答案 當 block 本身不被 self ...
一個 Objective-C 對象的內存結構是怎樣的? 如果把類的實例看成一個C語言的結構體(struct),它首先包含的是一個 isa 指針,而類的其它成員變量依次排列在結構體中。排 ...
iOS經典面試題 前言 寫這篇文章的目的是因為前兩天同學想應聘iOS開發,從網上找了iOS面試題和答案讓我幫忙看看。我掃了一眼,倒吸了一口冷氣,仔細一看,氣的發抖。整篇題目30多個沒有一個答案是對的,總結這篇面試題的作者對iOS機制根本就是一知半解就敢發到網上 ...
的,不過。咱們閑話少說,今天我們將繼續講述OC修飾屬性的一個Weak修飾符的底層實現,有時間我會花時間講 ...
HashSet 的實現原理?首先,我們需要知道它是Set的一個實現,所以保證了當中沒有重復的元素。一方面Set中最重要的一個操作就是查找。而且通常我們會選擇 HashSet來實現,因為它專門對快速查找進行了優化。HashSet使用的是散列函數,那么它當中的元素也就無序可尋。當中是允許元素 ...
1、請你談談 HashMap 的工作原理如果被問到 HashMap 相關的問題,它的工作原理都會被作為面試的開場白,這個時候先裝作若有所思的樣子冷靜一下。首先 HashMap 是基於 hashing 的原理,我們知道 HashMap 有兩個常用的方法 put()、get(),將鍵值對傳遞給 put ...