[英]Are there anonymous, type-safe, generic delegate signatures in C# 2.0?
考慮通用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
invokeFun
情況下編寫invokeFun
嗎? 我希望這樣的東西可以工作,但它不會:
public static B invokeFun<A, B>(A x, B (A) f)
{ return f(x); }
不,沒有。
最接近的是.NET 3.5中的兩個通用委托系列: Func
和Action
。 顯然它們實際上並不存在於.NET 2.0中(除了Action<T>
),但它們寫起來很簡單 - 事實上我已經為你做了 :)
就個人而言,我很高興“uber-short”語法無效 - 我發現比正常的“這里的類型,這里是名稱”參數的語法更難理解。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.