何时保留“代表”

时间:2010-03-14 21:10:34

标签: objective-c macos

我知道在Objective-C中你永远不应该保留你的代理,因为它可能会导致一个保留周期,但是,你怎么知道委托和非委托对象之间的区别?难道不能说只是向任何对象发送消息就是将工作委托给该对象吗?

1 个答案:

答案 0 :(得分:3)

delegate in Objective-C有一个相当完善的定义。它们通常用于已经实现的类中,但有一些自定义选项。

例如,UIApplicationDelegate用于实现特定于应用程序的行为,因此您不必子类UIApplication。这有助于最小化样板代码。

此外,委托对象通常使用delegate属性保留。我认为任何不是委托属性的对象都不是委托对象。委托对象通常用于代表常规对象。

我希望这会有所帮助,你的问题非常开放。