在一个方法中的参数类型方面,比如说不涉及到LINQ,那么哪种方式更好呢?显然 Func 更好,因为它更简单,描述性更强,并且如果每个人都使用它,那么所有内容都将变得兼容(好)。
然而我注意到 Microsoft 在一些库中使用了自己的委托,例如事件处理程序。那么,它们各自的优缺点是什么?我应该在什么时候使用它们?
编辑:
显然 Func<> 仅在3.5版本中可用,所以这可能是我看到非 Func 委托的主要原因。还有其他不使用 Func 的原因吗?(例如:来自.NET4的此链接)
同样的问题也适用于 Action<>
Action<x,y,z>
实例替换为它。但有办法在运行时进行转换。请参考Delegate.CreateDelegate
。 - leppieAction<T1,T2,T3>
作为参数类型,而不是BookmarkCallback,这样我们就不需要BookmarkCallback了,对吧? - Louis Rhys