簡體   English   中英

確實使用ARC將對象設置為nil會導致釋放其屬性

[英]does setting an object to nil with ARC cause a release of its properties

如果我將一個對象設置為“零”(例如,將視圖控制器設置為nil),那么按鈕和標簽之類的屬性也會在ARC下釋放嗎? 如果屬性為強類型並分配,會發生什么情況? 另外,當不使用ARC時,在我的delloc方法中,是否僅釋放保留類型屬性?

您應該閱讀此Apple Memory Management文檔

基本上,這取決於。 除非其他實例保留了該視圖控制器,否則它將被釋放。 然后,當它被釋放時,其屬性將被釋放-除非其他實例保留了它們。

如果將那些屬性所引用的對象傳遞給另一個實例,或者(如果屬性是某種UIView )將其他對象添加為子視圖(則添加它們的視圖將保留它們),則其他實例可能會保留這些引用。

重要的是,如果您是所有者,則可以釋放引用,如果需要通過引用,請保留引用並在完成后釋放。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM