无涯教程-F# - 类型扩展

21 阅读1分钟

类型扩展允许您向先前定义的对象类型添加新成员。

F#语言中类型扩展的语法如下:

// Intrinsic extension.
type typename with
    member self-identifier.member-name =
        body
    ...
[ end ]

// Optional extension. type typename with member self-identifier.member-name = body ... [ end ]

F#类型扩展示例

在下面的示例中,无涯教程将向先前定义的类添加新方法。在这里,使用类的单个对象调用方法。

type ClassExtension() =
 member this.ShowBefore() = printfn"Class before extension"

// Define type extension. type ClassExtension with member this.ShowAfter() = printfn"Class after extension"

let classExtension = new ClassExtension() classExtension.ShowBefore() classExtension.ShowAfter()

输出:

Class before extension
Class after extension

参考链接

www.learnfk.com/fsharp/f-sh…