我想端口现有的C#来F#,我会感到被陷在这个移植的C#行:

public object myInnerOject
有帮助吗?

解决方案

在C#object仅仅是一个类型名称参照System.Object。在F#中,你可以使用这个完整的.NET名称或类型别名obj

现在,关于字段声明 - 有各种方式来写,取决于上下文。此外,它是一个很好的做法来初始化F#的所有领域,所以会看到更大的代码的情况下是有用的。

但是,可能写:

type A() = 
  let mutable (myInnerObj:obj) = null

此产生初始化为myInnerObj类型System.Object,它是可变的罐可以在以后指派(null,例如)的私有字段myInnerObj <- new Random()。我用例如用私人领域,因为公共字段在.NET通常气馁。

其他提示

@Tomas是正确的。您可能还需要检查这些博客:

F#的基本语法 - 类型

这是什么C#代码看起来像F#?

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top