.net F#和泛型类型

.net F#和泛型类型,.net,f#,.net,F#,可以在f#中创建此项 公共TTarget映射(字符串SQL),其中TTarget:new() { } let map'T)>(sql:string)= 新的'T() 实际上,约束是不必要的。这同样有效 let-map(sql:string)=new'T() 不清楚您想做什么-根本不使用匿名类型;这是一种通用的方法。是的,这是真的,我很困惑。我试着把它转换成F#那么你对F#中的泛型方法的研究带来了什么?看,这项研究的证据会有用的。搜索F#泛型可以找到大量链接。(如果你搜索匿名类型,那是没有帮助的—

可以在f#中创建此项

公共TTarget映射(字符串SQL),其中TTarget:new() { }
let map'T)>(sql:string)=
新的'T()

实际上,约束是不必要的。这同样有效

let-map(sql:string)=new'T()

不清楚您想做什么-根本不使用匿名类型;这是一种通用的方法。是的,这是真的,我很困惑。我试着把它转换成F#那么你对F#中的泛型方法的研究带来了什么?看,这项研究的证据会有用的。搜索F#泛型可以找到大量链接。(如果你搜索匿名类型,那是没有帮助的——这就是为什么确保你仔细使用术语非常重要的原因。)为了将来的参考,你要寻找的术语是“泛型类型约束”。有关F#中可能的约束列表以及如何使用它们的一些示例,请参见。
public TTarget Map<TTarget>(string SQL) where TTarget : new()
{
}
let map<'T when 'T: (new: unit -> 'T)> (sql: string) =
    new 'T()