2013-12-13 47 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'命名空間,以便於發現。 –

相關問題