【发布时间】:2014-02-16 12:36:20
【问题描述】:
在 C# 中你可以做类似的事情
Func<typeof(variableType),int)> myDelegate;
在哪里可以动态地将类型参数传递给委托?
【问题讨论】:
-
你能得到的最接近的是
Func<object, int>或只是delegate myDelegate
在 C# 中你可以做类似的事情
Func<typeof(variableType),int)> myDelegate;
在哪里可以动态地将类型参数传递给委托?
【问题讨论】:
Func<object, int>或只是delegate myDelegate
没有。 typeof() 在运行时进行评估。您的委托声明在编译时进行评估。必须首先进行 typeof() 评估才能使其工作。
【讨论】:
你不能使用Func<typeof(variableType),int)> myDelegate;.并得到语法错误。
用途:
Func<object,int> myDelegate;
或:
Func<dynamic,int> myDelegate;
【讨论】: