是否可以在 F# 中创建一个简单的公共(public)可变字段?我正在创建一个库,我将从 C# 程序访问该库,并且我需要能够从 C# 设置字段。
//C# Equivalent
public class MyObj
{
public int myVariable;
}
//F#
type MyObj =
//my variable here
member SomeMethod() =
myVariable <- 10
//C# Usage
MyObj obj = new MyObj();
obj.myVariable = 5;
obj.SomeMethod()
最佳答案
type MyObj() =
[<DefaultValue>]
val mutable myVariable : int
member this.SomeMethod() =
this.myVariable <- 10
你可以离开[<DefaultValue>]
如果没有主构造函数,但这可以处理更常见的情况。
关于f# - 对象中的公共(public)可变字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24670719/