在我的應用程序中,我在我的h文件中定義了一些屬性。要釋放哪些屬性,哪些不是?
據我所知,如果在m文件中有某個屬性獲取「alloc」的某個位置,我應該在dealloc方法中釋放它(或之前,如果它不再相關)。
我不清楚有關不獲取屬性「黃金」:
- 的NSString - 我應該釋放他們(我讀職位,說「是」和職位,說「不」 )
- 的NSDictionary/NSArray的 - 當我創建它們,我不使用 「黃金」,但一些arrayWith或dictionaryWith方法;他們是否獲得需要發佈的內存分配,還是我可以假設XCode正在關注他們的數據管理?
- BOOL - 只是想確認我並不需要釋放他們
- INT - 只是想確認我並不需要釋放他們
- UI項(喜歡的UIButton ,UILabel等) - 這些項目是在IB連接的,我沒有從代碼內的「alloc」 - 是IB發佈它們,還是我應該自己做?
- 屬性爲屬性如何影響內存管理要求?複製/保留/分配/非原子(我明白,當我做「複製」我創建另一個副本,因此supposably分配更多的內存,但我看到的示例代碼,在某些情況下釋放複製屬性,並在某些情況下不)
我不介意閱讀另一個教程(在大多數情況下,當我問一個關於內存管理的問題時,我讓人們給我發送鏈接到Apple內存管理指南),但是如果有人能解釋它或者可以直接以一個更鮮豔/清晰的教程比蘋果提出的一個我非常感謝它。