Рассмотрим делегата для общей функции от A
до B
:
public delegate B Fun<A, B>(A x);
Затем я могу написать функцию, которая принимает и вызывает делегат Fun
:
public static B invokeFun<A, B>(A x, Fun<A, B> f)
{ return f(x); }
(Неважно, разумно ли писать invokeFun
.)
Могу ли я написать invokeFun
без имя делегат Fun
? Я ожидал, что что-то подобное сработает, но это не так:
public static B invokeFun<A, B>(A x, B (A) f)
{ return f(x); }