在F#中,如何实例化一个泛型类型定义?
问题描述:
如何在F#中实例化一个通用类型定义? (即其IsGenericTypeDefinition属性返回true的Type类的实例)。在F#中,如何实例化一个泛型类型定义?
实例C#:
Type d1 = typeof(Dictionary<,>);
注:
typeof<Dictionary<'T,'U>>
不起作用。 'T和'U被解释为对象。
答
let t = typedefof<Dictionary<_,_>>
t.IsGenericTypeDefinition // true
这与typeof
不一样。请注意中间的def
:)
['typedefof '](https://msdn.microsoft.com/en-us/visualfsharpdocs/conceptual/operators.typedefof%5B%27t%5D-type-function- %5Bfsharp%5D),我想。 – ildjarn
@ildjarn我已经试过了'T.它不起作用,因为'T被解释为对象。更新了问题 – sthiers