2013-12-13 41 views
1

我发现自己经常编写采用通用参数或返回类型的代表。因此我经常发现自己使用委托像这样:标准类库中是否有常用的代理?

public delegate void CommonVoidEmptyDelegate(); 
public delegate void CommonVoidDelegate<TParam>(TParam p); 
public delegate void CommonVoidParamDelegate<TParam>(params TParam[] p); 
public delegate TReturn CommonEmptyDelegate<TReturn, TParam>(TParam p); 
public delegate TReturn CommonParamDelegate<TReturn, TParam>(params TParam[] p); 

代替我的每一个项目,我想知道是否有共同之处在于,我可以使用该框架的东西定义这些。

+5

你的意思是像'Func'和'Action'代表? – Ric

+0

非常感谢你们所有的答案。我一直在避免将.NET 3.5推广到> 1,000个WM5设备,因为从逻辑上讲,这可能是一个麻烦的练习。我不知道这些代表是否可用,但会非常方便使用。 –

回答

3

转换评论回答:

只是使用FuncAction代表。它们提供了很大的灵活性。

3

第一个可以使用Action,Action<T>,第三个可以使用Func<T, TResult>。 第三和第五代表没有标准代表。

+1

但是你可以做到这些,甚至可以称它们为'Func'和'Action'。 –

+1

@AdamHouldsworth,你可以自己写,并使用相同的命名约定。 – dcastro

+1

不挑剔,我+ 1'd,只是说,OP可以让失踪的代表,甚至把他们放在'System'命名空间,以便于发现。 –

相关问题