Warm tip: This article is reproduced from serverfault.com, please click

c#-何时以及为何使用委托?

(c# - When & why to use delegates?)

发布于 2010-01-07 09:51:56

我对 C# 比较陌生,我想知道何时适当地使用委托它们在事件声明中被广泛使用,但是我什么时候应该在我自己的代码中使用它们,它们为什么有用? 为什么不使用别的东西?

我也想知道什么时候必须使用委托,而我别无选择

感谢你的帮助!

编辑:我想我在这里找到了对 Delegates 必要使用

Questioner
Unknown
Viewed
22
community wiki 2016-08-19 04:18:34

我同意已经说过的一切,只是想在上面加上一些其他的话。

委托可以被视为一个/某些方法的占位符。

通过定义委托,你对类的用户说,“请随意将与此签名匹配的任何方法分配给委托,并且每次调用我的委托时都会调用它”。

典型的用途当然是事件。所有 OnEventX委托给用户定义的方法。

委托对于向对象用户提供一些自定义其行为的能力很有用大多数情况下,你可以使用其他方式来实现相同的目的,我认为你永远不会被迫创建委托。在某些情况下,这只是完成任务的最简单方法。