我知道这是个愚蠢的问题。我可以在c#中创建一个类如下的空类。
class Customer{}
但我怎么能在F#中做到这一点?这是我的尝试
type Customer() =
let _ = ()
正确的方法是什么?
答案 0 :(得分:20)
尝试
type Customer() = class end
通常情况下,您可以隐藏class
和end
标记,并且编译器会在类的定义的开头和结尾处推断它们的存在,但如果类完全为空,则需要指定它们。同样,您可以使用struct end
和interface end
生成结构和接口。
答案 1 :(得分:7)
编写一个空类(使用无参数构造函数)的另一种方法,我不确定如果与@ kvb的解决方案相比,得到的IL看起来是多么简单
type Customer() = do ()
答案 2 :(得分:7)
另一种方式:
type Customer =
new() = {}