C# 一般委托的例子?
泛型类可以用泛型委托声明,如下所示,但这是不幸的元数据。我找不到完整的例子:C# 一般委托的例子?,c#,generics,generic-programming,C#,Generics,Generic Programming,泛型类可以用泛型委托声明,如下所示,但这是不幸的元数据。我找不到完整的例子: public abstract class Expression { public static Expression<TDelegate> Lambda<TDelegate>(Expression body, bool tailCall, IEnumerable<ParameterExpression> parameters); } 公共抽象类表达式 { 公共静态表达式Lambd
public abstract class Expression
{
public static Expression<TDelegate> Lambda<TDelegate>(Expression body, bool tailCall, IEnumerable<ParameterExpression> parameters);
}
公共抽象类表达式
{
公共静态表达式Lambda(表达式体、bool tailCall、IEnumerable参数);
}
在这里,TDelegate是一个函数。您能否编写一个使用泛型委托的泛型类示例?我找不到这样的示例。在约束委托类型时,泛型参数没有多大帮助。除非您希望使用泛型参数传递委托类型,而不是使用常规的
typeof
关键字或Object。GetType
方法:
public void DoStuff<TDelegate>()
// vs.
public void DoStuff(Type delegateType);
public void DoStuff<T>(Func<T> func) where T : IWhatever
{
}