F#NumericLiteral:FromString方法

时间:2010-05-26 13:51:24

标签: f#

有没有人知道是否有办法自动调用F#中数字文字的FromString方法?我已经尝试(并成功)使用FromOne,FromZero等方法,但我不知道在编译时如何处理字符串......

2 个答案:

答案 0 :(得分:5)

来自F# language specification的第51页:

xxxx<suffix>
For xxxx = 0 -> NumericLiteral<suffix>.FromZero()
For xxxx = 1 -> NumericLiteral<suffix>.FromOne()
For xxxx in the Int32 range -> NumericLiteral<suffix>.FromInt32(xxxx)
For xxxx in the Int64 range -> NumericLiteral<suffix>.FromInt64(xxxx)
For other numbers -> NumericLiteral<suffix>.FromString("xxxx")

这意味着,只有当前4个不满足时,才会调用FromString。此外,xxxx必须是带符号的数字,不能使用其他字母设置为xxxx。

答案 1 :(得分:1)

我认为它适用于大于Int64.MaxValue的数字。