无涯教程-F# - 对象表达式

41 阅读1分钟

F#对象表达式是一种特殊的表达式。它基于现有的基类型、接口或接口集创建匿名对象类型的新实例。

F#语言中对象表达式的语法如下:

// When typename is a class:
{ new typename [type-params]arguments with
    member-definitions
    [ additional-interface-definitions ]
}
// When typename is not a class:
{ new typename [generic-type-args] with
    member-definitions
    [ additional-interface-definitions ]
}

当Type为Class时,F#对象表达式。

在下面的示例中,您可以使用其他预定义的自定义类,如System.Object。

let ex =
 {
      new System.Exception() with member x.ToString() = "Hello FSharp" 
 }
printfn "%A" ex

输出:

Hello FSharp

参考链接

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