F# 解释';F表示法#
我正在学习F#,当我在Visual Studio中键入任何代码并在F#Interactive上运行它们时,它会显示如下内容F# 解释';F表示法#,f#,F#,我正在学习F#,当我在Visual Studio中键入任何代码并在F#Interactive上运行它们时,它会显示如下内容 val foo : x:'a -> 'a 我想这意味着foo是一个函数,它接收一个类型的参数x,并返回一个与x类型相同的值 但是这是什么意思?许多函数在intellisense上也显示了这一点。单引号(”)表示该参数的类型是泛型的。它可以像您给出的示例那样进行推断,也可以显式应用 有关详细信息,请参见隐式泛型构造下。'a表示类型变量,换句话说,表示尚未确定(且不必确
val foo : x:'a -> 'a
我想这意味着foo
是一个函数,它接收一个类型的参数x
,并返回一个与x类型相同的值
但是这是什么意思?许多函数在intellisense上也显示了这一点。单引号(”
)表示该参数的类型是泛型的。它可以像您给出的示例那样进行推断,也可以显式应用
有关详细信息,请参见隐式泛型构造下。
'a
表示类型变量,换句话说,表示尚未确定(且不必确定)的类型
请注意,这不同于
a'
,后者是一个规则变量,其名称为两个字符:a和'。与C#等其他语言不同,单引号是F#变量名称中允许的字符,但作为名称中消除上述类型变量歧义的第一个字符除外。这正是我在搜索“F#中的单引号含义”时所寻找的。a'
符号在哪里有用?