F#类型的功能和一个并[d GeneralizableValue]的计算值属性 [英] F# type functions and a [<GeneralizableValue>] attribute

查看:176
本文介绍了F#类型的功能和一个并[d GeneralizableValue]的计算值属性的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

什么是这两架F#类型函数的区别是:

 让defaultInstance1<'一当a:(新:单位 - >'一)GT; =新的一个()并[d GeneralizableValue]的计算值
让defaultInstance2<'一当a:(新:单位 - >'一)GT; =新的一个()


解决方案

 让defaultInstance1<'一当a:(新:单位 - >'一)GT; =新的一个()并[d GeneralizableValue]的计算值
让defaultInstance2<'一当a:(新:单位 - >'一)GT; =新的一个()让X1 = defaultInstance1 //值限制
让X2 = defaultInstance2

What is the difference between this two F# type functions:

let defaultInstance1<'a when 'a:(new: unit->'a)> = new 'a()

[<GeneralizableValue>]
let defaultInstance2<'a when 'a:(new: unit->'a)> = new 'a()

解决方案

let defaultInstance1<'a when 'a:(new: unit->'a)> = new 'a()

[<GeneralizableValue>]
let defaultInstance2<'a when 'a:(new: unit->'a)> = new 'a()

let x1 = defaultInstance1 // value restriction
let x2 = defaultInstance2

这篇关于F#类型的功能和一个并[d GeneralizableValue]的计算值属性的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆