2009-09-06 64 views
0

由於KVC用於在iPhone上設置網點,因此有2種方法(我知道)確保您正確處理內存管理。如何處理iPhone SDK中網點的內存管理

具體來說,我指的是由Aaron Hillegass寫的article

我的問題是你使用哪種方法,你的推理是什麼?

  • 釋放所有你在的dealloc 和viewDidUnload(請確保您設置 他們爲零的viewDidUnload。)
  • 讓你的店鋪弱引用

個人店鋪,我傾向於使用弱因爲它看起來更清潔。

回答

1

我去弱引用。正如你所說它不那麼混亂,並使一個已經非常冗長的代碼更容易管理

+0

+1我也使用(非原子,分配)爲我所有的網點。那麼我不必記得去做任何事情。 – 2009-09-06 20:52:20

+0

但是正如文章所述,您必須確保在使用此技術時加載視圖 - 否則在視圖卸載後您可能會遇到隨機崩潰訪問IBOutlets。 – 2009-09-06 21:46:39

1

弱引用更容易,是的。更清晰?保留屬性同樣清晰,您可以更清楚地瞭解什麼時候發佈。我個人喜歡主要使用屬性來暴露該類的某些屬性到外部世界 - 所以對於IBOutlets只有類將操作,我只是聲明它們而不使用屬性並在dealloc中釋放它們。

無論哪種情況,在viewDidUnload中設置爲零IBOutlet引用。