1
這是我的理解是:這是可可參考計數的正確總結嗎?
對象是只有保留(參考計數器遞增):
- 當從
NSObject
init
被調用。 - 當
retain
被調用。
對象是僅釋放(參考計數器遞減):
- 當
release
被調用。 - 當包含對象的自動釋放池排出
,並澄清,自動釋放不不保留,只是會在對象進入自動釋放池堆棧頂部的最池。
這是我的理解是:這是可可參考計數的正確總結嗎?
對象是只有保留(參考計數器遞增):
NSObject
init
被調用。retain
被調用。對象是僅釋放(參考計數器遞減):
release
被調用。,並澄清,自動釋放不不保留,只是會在對象進入自動釋放池堆棧頂部的最池。
號
init
不保留,並有你沒有提到它做的各種方法。 Memory Management Programming Guide for Cocoa有一個簡單的(也是正確的)總結。
(有兩個例外,我所知道的:在NSPropertyListSerialization
方法,它通過提供一個參考保留錯誤字符串)
的NSPropertyListSerialization文檔明確地告訴你,有問題的方法打破規則了。 – Chuck 2010-03-01 20:57:28
另一個很好的總結是在可可核心競爭力:http://developer.apple.com/mac/library/documentation/General/Conceptual/DevPedia-CocoaCore/MemoryManagement.html – 2010-03-01 21:41:27
正如彼得自己的http://boredzo.org/ cocoa-intro/ – 2010-03-01 22:46:03