为什么我不能调用这里的base
实现f
:
type Base =
abstract f : int -> int -> int
default this.f (x : int) (y : int) : int = x + y
type Derived =
inherit Base
override this.f (x : int) (y : int) : int = base.f -x -y
调用base.f
引发此编译器错误:
error FS0419: 'base' values may only be used to make direct calls to the base implementations of overridden members
如果我更改f
为采用单个参数,那么它会编译。大概这与咖喱参数与元组参数有关,但上面的代码对我来说看起来不错。