1
我試圖創建需要對IEvent之上附加的方法,這樣的接口的接口:如何創建與F#的其他方法
type Varying<'t> =
abstract member Get : unit -> 't
abstract member Set : 't -> unit
abstract member AddHandler : Handler<'t> -> unit
abstract member RemoveHandler : Handler<'t> -> unit
member v.Add(f) = v.AddHandler(new Handler<_>(fun _ x -> f x))
interface IEvent<'t> with
member c.AddHandler(h) = c.AddHandler(h)
member c.RemoveHandler(h) = c.RemoveHandler(h)
member c.Add(f) = c.Add(f)
我加入了Get
& Set
方法。問題是,F#編譯器要我實現抽象成員:
沒有執行被賦予了「抽象成員Varying.AddHandler:處理器<‘T> - >單元’
但這種類型的一點是該成員是抽象的。我究竟做錯了什麼?