F# 接受以下内容:
type Abc =
member this.A = 10
由于没有提供参数列表,因此没有默认构造函数。可以在
Abc
中添加构造函数吗? ?如果没有,可以用 Abc
做什么?
最佳答案
我想不出这个有很多用途,但你可以做两件事
type Abc =
member this.A = 10
[<Class>]
type Def =
inherit Abc
type Abc with
static member Foo() = ()
在 C# 中,接口(interface)或抽象类的代码契约在“契约类”中定义,该契约类必须标记为抽象并具有私有(private)构造函数(即它是不可实例化的)。在我看来,这是实现这一目标的更好方法。但是 C# 不支持无构造函数的类。
关于f# - 没有参数列表的类定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23395324/