我在C#中相对较新,我想知道 何时适当使用Delegates 。它们在事件声明中被广泛使用,但是我什么时候应该在自己的代码中使用它们, 为什么它们有用? 为什么不使用其他东西?
我也想知道 何时必须使用委托,而别无选择 。
感谢您的帮助!
我同意已经说过的一切,只是尝试在上面加上一些其他字眼。
委托可以看作是一种/某些方法的占位符。
通过定义委托,您对班级的用户说:“ 请随意将与该签名匹配的任何方法分配给委托,每次我的委托被调用时,都会调用该委托 。”
当然,典型的用法是事件。所有OnEventX都 委托 给用户定义的方法。
委托对于为对象的 用户 提供一些自定义其行为的功能很有用。在大多数情况下,您可以使用其他方式来实现相同的目的,而且我认为您永远不会 被迫 创建委托。在某些情况下,这只是完成任务的最简单方法。