簡體   English   中英

C#2.0中是否存在匿名,類型安全,通用的委托簽名?

[英]Are there anonymous, type-safe, generic delegate signatures in C# 2.0?

考慮通用AB函數的委托:

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中的兩個通用委托系列: FuncAction 顯然它們實際上並不存在於.NET 2.0中(除了Action<T> ),但它們寫起來很簡單 - 事實上我已經為你做了 :)

就個人而言,我很高興“uber-short”語法無效 - 我發現比正常的“這里的類型,這里是名稱”參數的語法更難理解。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM