所有 Func 委托都返回一个值。可以与返回 void 的方法一起使用的 .NET 委托是什么?
所有 Func 代表都返回一些东西;所有的 Action 代表都返回 void。
Func<TResult>不接受任何参数并返回 TResult:
Func<TResult>
public delegate TResult Func<TResult>()
Action<T>接受一个参数并且不返回值:
Action<T>
public delegate void Action<T>(T obj)
Action是最简单的“裸”代表:
Action
public delegate void Action()
还有Func<TArg1, TResult>and Action<TArg1, TArg2>(以及其他最多 16 个参数)。所有这些(除了Action<T>)都是 .NET 3.5 的新内容(在 System.Core 中定义)。
Func<TArg1, TResult>
Action<TArg1, TArg2>