2013-03-27 30 views
2

我讀答案,這個線程Handling Pointer-to-Pointer Ownership Issues in ARC後的一些問題;IOS __weak和__autoreleasing

對於演示圖1,當一個「強」屬性的變量的引用傳遞,隱式地創建了一個隱藏(__自動釋放)變量和對象不會被保留。 但是對於演示4,當傳遞一個'弱'歸因變量的引用時,該對象會保留一次。

所以我的問題是隻是我的好奇心,爲什麼只有隱變量從「__weak」創建獲取對象保留+ 1很簡單?這種模式是否適用於任何特殊的問題?

希望我解釋清楚我的問題,任何幫助將不勝感激。

+1

這看起來像一個有趣的問題,但你應該複製相關的代碼,並將其直接粘貼到你的文字,使人們可以不用在頁面之間跳轉理解。 – 2013-03-27 15:49:22

+0

我相信弱引用在被訪問時會被保留/自動釋放 - 這可以防止它們通過使用弱引用的方法中途調零。 – nielsbot 2013-03-27 15:54:30

+0

@nevan王:我試圖複製並粘貼在這裏,但演示網頁摘要有長而搞砸以及與許多意見。無論如何感謝您的回覆。 – 2013-03-28 01:54:35

回答

0

隱藏(__自動釋放)是隱式創建變量和 對象沒有得到保留

這是不正確的。 __autoreleasing是保留和自動釋放的東西。

相關問題