谁能帮我举例说明在 F# 中何时需要显式字段?例如,以下三个类如何都有用
type MyClass =
val a : int
val b : int
new(a0, b0) = { a = a0; b = b0; }
或
type MyClass() =
[<DefaultValue>] val mutable a: int
[<DefaultValue>] val mutable b: int
member this.Setab( a0: int, b0: int) =
a<- a0
b<- b0
比较
type MyClass(a0:int,b0:int) =
member x.a = a0
member x.b = b0
我只能看懂最后一节课。谢谢。
编辑:以下问题是前两个概念必需的示例:Order of fields in a type for FileHelpers
最佳答案
前两种形式的用途有限,如果您需要非常明确地说明类中字段的布局方式,它们很有用。例如,您可能将类型传递给非托管代码,该代码需要一定数量的字段,或者您可能将其传递给在字段上使用反射的 API。
关于.net - F# 类属性与显式字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6054309/