【发布时间】:2012-04-18 02:03:27
【问题描述】:
根据这个page,一个类的所有抽象成员都必须有一个type-signature。但我想定义一个具有 void 输入参数和 void 返回类型的抽象类。而void 在此上下文中不是有效的关键字。
【问题讨论】:
-
我不确定我是否理解对此的反对意见。有谁不赞成评论为什么?
根据这个page,一个类的所有抽象成员都必须有一个type-signature。但我想定义一个具有 void 输入参数和 void 返回类型的抽象类。而void 在此上下文中不是有效的关键字。
【问题讨论】:
在 F# 中,通常使用 unit 类型,而在 C# 中使用 void 关键字。所以你正在寻找的一个例子是:
[<AbstractClass>]
type MyAbstractClass() =
abstract MyMethod : unit -> unit
type MyDerivedClass() =
inherit MyAbstractClass()
override this.MyMethod() = printf "Do something here..."
【讨论】:
unit 编译为void。