我想了解F#的两个片段,但不知道要google什么。第一:
let ``1+2`` () = ....
我猜这只是意味着“将表达式转换为标识符”?但是,如果我想引用它,该功能是什么?
其次,字符^
在类型中出现时的含义是什么?我已经找到了几个提及它,但解释总是只是说“类型是这个”而不是“它不同于没有1 ^ 1的类型......”。例如:
let inline blah x y = x+y;;
val inline blah :
^a -> ^b -> ^c
when ( ^a or ^b) : (static member ( + ) : ^a * ^b -> ^c)
非常感谢提前。
答案 0 :(得分:4)
答案 1 :(得分:1)
反引用语法确实只是一种将任意字符“引用”为标识符的方法,我不确定它是否有名称。它通常用于例如
let ``This Identifier Contains Spaces`` = 42
或
foo.``member``(42) // 'member' is an F# keyword, but maybe it was the name of some
// method from C# code you're using, so here's a way to call it
克拉表示静态解析的类型参数:
http://msdn.microsoft.com/en-us/library/dd548046.aspx
用于ad-hoc重载/通用。