在Func Delegate中使用out参数

时间:2012-12-28 10:55:26

标签: c#-4.0 delegates func

我有方法签名

bool TryGetItem(string itemKey,out Item item)

我如何将此签名封装在

delegate V Func<T,U,V>(T input, out U output)

如同帖子:Func<T> with out parameter

1 个答案:

答案 0 :(得分:7)

你刚才写的答案。

如果你在.net 4.0或更高版本,你可以指定参数的方差。

public delegate TV MyFunc<in T, TU, out TV>(T input, out TU output);

然后使用:

bool TryGetItem(string itemKey,out Item item);

MyFunc<string, Item, bool> func = TryGetItem;