【发布时间】:2016-11-21 18:09:28
【问题描述】:
本地类型是指只能在特定函数中访问的类型
例如,假设我想获取一些数据,对其进行格式化,然后将其序列化为 json。
let parse data = // hypothetical scenario
type Record = { root : string[] }
let record = { root = data }
JsonConvert.SerializeObject record
似乎因为在其他任何地方都不需要该类型,所以这应该可以工作。但是,当我写这个时,我得到了编译错误。
有没有办法在 F# 中获得类似的功能?
【问题讨论】:
-
@JohnPalmer 这些不是匿名的吗?使用这个时你不会失去一些多态的能力吗?
-
您可以使用
private访问修饰符,以便您的类型只能从封闭模块访问。
标签: types scope f# functional-programming