1
Xcode 3.2中使用的@property(nonatomic,retain)和@property(strong,非原子),我們在Xcode 4.2中使用?這裏「強」是什麼意思?Xcode 3.2中的@property(nonatomic,retain)和Xcode 4.2中的@property(strong,nonatomic)之間的區別
Xcode 3.2中使用的@property(nonatomic,retain)和@property(strong,非原子),我們在Xcode 4.2中使用?這裏「強」是什麼意思?Xcode 3.2中的@property(nonatomic,retain)和Xcode 4.2中的@property(strong,nonatomic)之間的區別
「strong」是ARC(自動引用計數)提示,只要此屬性指向一個對象,該對象就不會自動釋放。
還有一個「弱」關鍵字,相反(在IOS5中)表示ARC可以釋放屬性指向的對象,只要它將屬性同時設置爲NULL即可。總之,只要一個對象至少有一個指向它的「強」屬性,它就不會被ARC釋放,當它不會立即釋放時,所有「弱」屬性指向它被設置爲NULL。
好吧,這意味着我們可以使用此屬性參數釋放。通常xcode 4.2會給保留/釋放操作帶來錯誤。 –
@Arshad - 不,它沒有。如果您使用'strong',則使用ARC,如果您使用的是ARC,則不會發布。 – jrturton
@Arshad不,如果你啓用了ARC,你不能(也不應該)發佈任何東西。只需設置「強大」屬性,ARC將根據需要自動處理保留/釋放對象。 –