According to this page, all abstract members of a class must have a type-signature. But I want to define a abstract class that has void input parameter and void return type. And void is not valid keyword in this context.

有帮助吗?

解决方案

In F#, you typically use the unit type where you would use the void keyword in C#. So an example of what you're looking for would be:

[<AbstractClass>]
type MyAbstractClass() =
    abstract MyMethod : unit -> unit

type MyDerivedClass() =
    inherit MyAbstractClass()
    override this.MyMethod() = printf "Do something here..."
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top