哪些F#类型名称和声明语法被认为是惯用的?
F#有多种方法来声明相同的类型。这可能是因为F#作为ML家族成员和.NET语言的双重血统。我还没有找到任何关于哪种风格更地道的指导 具体来说,我想知道:哪些F#类型名称和声明语法被认为是惯用的?,f#,F#,F#有多种方法来声明相同的类型。这可能是因为F#作为ML家族成员和.NET语言的双重血统。我还没有找到任何关于哪种风格更地道的指导 具体来说,我想知道: 对于F#、float或double中的64位IEEE 754浮点数字,哪个更为惯用 在F#中,哪一种更习惯于声明数组类型: int[] int数组 数组 资料来源: 上下文:我正在编写一些API文档,解释数据存储中的数据如何映射到.NET类型,以及这些类型通常如何在C#和F#中声明。似乎是一个很好的示例,对于双精度,它似乎更喜欢
- 对于F#、
或float
中的64位IEEE 754浮点数字,哪个更为惯用double
- 在F#中,哪一种更习惯于声明数组类型:
int[]
int数组
数组
上下文:我正在编写一些API文档,解释数据存储中的数据如何映射到.NET类型,以及这些类型通常如何在C#和F#中声明。似乎是一个很好的示例,对于双精度,它似乎更喜欢
浮点
,int[]
和seq
,它几乎总是float
。除非你同时处理单打和双打,并且需要确保清晰,我想
对于泛型类型,我和see people使用的常用语法是:
int选项
int列表
int[]
- 对于所有其他类型,包括特定于F的类型,如
、Async
和Set
,都使用尖括号语法Map
我觉得唯一有明显差异的类型是
seq
(IEnumerable的别名):我认为大多数人使用seq
,但有相当多的人编写int-seq
。无论哪种方式,您都应该使用seq
,而不是IEnumerable
。类似地,对于System.Collections.Generic.List
,您应该使用别名ResizeArray
,根据交互模式中显示的类型,float实际上是默认的实数类型F#,对应于64位浮点数(即双精度)。对于数组,它显示int[],而对于整数列表,它显示int list。我发现,当您将int[]声明为数组时,fsi将使用int[],如果您将其声明为数组或int array,则使用int array对投票关闭的人说,因为这是基于意见的:是,属于语言风格指南的东西通常是意见的问题。这并不意味着在这个问题上没有权威的意见。