2012-12-04 43 views
1

可能重複:
Differences between strong and weak in objective-c瞭解弱與強引用

比方說,我有一個顯示模型對象的數據的tableview。如果我在的UITableViewController聲明...

@property (strong, nonatomic) NSArray *modelObject; 

如果我通過這個數組在賽格瑞另一個視圖控制器屬性是否應該宣佈我的目的地視圖控制器weak

+0

我已經多次閱讀定義,我只想驗證我在實踐中正確實施。 – mnort9

回答

1

在這個特定的情況下,要麼工作。

strong是一個問題,如果該屬性可以保持strong圓形返回參考引用對象。我認爲這是一種可能性,但假設控制器不被當作數據處理,不太可能。由於您的初始控制器將在目標控制器的整個生命週期內保留並持有strong引用,因此在目標中擁有weak屬性也應該可以。

我可能會選擇strong的一個原因是隨着應用程序的發展,針對問題的保險。如果目標有一天有機會從其他來源獲得它的modelObject,你是否會記得提供商必須有強大的參考?