2010-03-14 65 views
1

我知道在Objective-C中,你永遠不應該保留你的委託,因爲它可能導致一個保留循環,但是,你怎麼知道委託和非委託對象之間的區別?難道不能說僅僅發送消息給任何對象就是將工作委託給該對象?什麼時候保留一個「委託」

回答

3

A delegate in Objective-C有一個相當完善的定義。它們通常用於已經實現的類中,但有一些用於定製的選項。

例如,UIApplicationDelegate用於實現特定於應用程序的行爲,因此您不必子類UIApplication。這有助於最小化樣板代碼。

此外,委託對象通常保持使用委託屬性。我會爭辯說,任何不是委託屬性的對象都不是委託對象。代表對象通常用於代表代表的常規對象。

我希望這有助於你的問題是相當開放的。

+0

還有其他代表性的東西,你也不應該像數據源一樣保留。 – 2010-03-15 06:15:08

相關問題