簡體   English   中英

如何使用約束“委托”

[英]How to use the constraint 'delegate'

C#現在允許泛型中的委托約束。 在嘗試學習新功能時,我無法提供一種實用的使用方式。 正如其他人多年來一直要求使用此功能一樣,我顯然在這里沒有提到這一點。

public class Test<TDelegate> where TDelegate : Delegate
{
    readonly TDelegate fd; // no way to call this 
    public event TD Evt; // not even legal
}

類如何對作為委托的泛型參數做有用的事情?

您要做的就是:

public static void Foo<T>(T t) where T : System.Delegate
{
    t.DynamicInvoke();
}

由於某些原因,普通的Invoke()不是可以使用的有效方法。

暫無
暫無

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

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