我有我的自定義的UIViewController成員變量被定義爲「分配」是這樣的(不是「保留」):是更好的做法是使成員乏保留與分配
@property (nonatomic, assign) UIButton* mSkipButton;
在我的loadView方法,我將var(例如self.mSkipButton)設置爲變量類型的自動釋放分配。然後我將它附加到我的控制器的視圖中,實質上具有視圖引用計數並根據需要釋放它。
然而,這涉及到我將指針存儲在我的成員var中,並且如果計數在某個點遞減,它可能引用釋放的內存。是不是更好的做法,而是將變量聲明爲'retain',然後在viewDidUnload方法中釋放成員var(或者只是將它設置爲零來釋放並確保我沒有地址)?
或者,我可以簡單地將viewDidUnload中的member var設置爲nil,而不是將其設置爲保留變量?
該對象是否被另一個超出視圖控制器的對象所保留?如果你能證明它被另一個項目(也許是應用程序委託)保留,那麼你可能會逃避不保留它。但最佳實踐表示,您應該始終保留併發布。 – Kekoa 2012-01-05 21:32:08