类型扩展允许您向先前定义的对象类型添加新成员。
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