考虑了通用委托A
给B
函数:
public delegate B Fun(A x);
然后我可以编写一个接受并调用Fun
委托的函数:
public static B invokeFun(A x, Fun f) { return f(x); }
(不要在意写作是否明智invokeFun
.)
我可以写invokeFun
没有命名的Fun
委托?我希望这样的东西可以工作,但它不会:
public static B invokeFun(A x, B (A) f) { return f(x); }
Jon Skeet.. 7
不,没有.
最接近的是.NET 3.5中的两个通用委托系列:Func
和Action
.显然它们实际上并不存在于.NET 2.0中(除了Action
),但是它们写起来很简单 - 事实上我已经为你做了 :)
就个人而言,我很高兴"uber-short"语法无效 - 我发现比正常的"这里的类型,这里是名称"参数的语法更难理解.
不,没有.
最接近的是.NET 3.5中的两个通用委托系列:Func
和Action
.显然它们实际上并不存在于.NET 2.0中(除了Action
),但是它们写起来很简单 - 事实上我已经为你做了 :)
就个人而言,我很高兴"uber-short"语法无效 - 我发现比正常的"这里的类型,这里是名称"参数的语法更难理解.