F#类型别名无法正常工作。 e.g。
type MyMap = Map<string, string>
let myMap = ["One", "1"; "Two", "2"] |> Map.ofList
let myMap2= ["One", "1"; "Two", "2"] |> MyMap.ofList
第一个让工作正常。第二个失败了:
错误FS0039:字段,构造函数或成员'ofList'不是 定义
这使我神秘。我原以为如果MyMap是Map的别名,Map的所有成员都可以通过MyMap访问。
是否有某些文件解释了这个?
在F# for Fun and Profit: Type abbreviations,它表示编译器实际上会用实际的底层类型替换缩写。我曾假设会包含成员参考。