F# 函数返回值上的点运算符
你能对一个函数的返回值应用点运算符并从那里链接它吗 比如说F# 函数返回值上的点运算符,f#,F#,你能对一个函数的返回值应用点运算符并从那里链接它吗 比如说 type Person = { name: string } let getPerson = let person = {name = "John Doe"} person sprintf "%s" getPerson().name 你能对一个函数的返回值应用点运算符并从那里链接它吗 它取决于函数的返回值。在您的例子中,它是一种记录类型,答案是肯定的:您可以使用点语法访问它的字段 不过,在您的示例中有两个问
type Person = {
name: string
}
let getPerson =
let person = {name = "John Doe"}
person
sprintf "%s" getPerson().name
你能对一个函数的返回值应用点运算符并从那里链接它吗
它取决于函数的返回值。在您的例子中,它是一种记录类型,答案是肯定的:您可以使用点语法访问它的字段
不过,在您的示例中有两个问题getPerson
是一个Person
记录值,而不是返回Person
记录的函数。在您的示例中,您只需添加一个单元参数即可使其成为函数:
let getPerson () =
let person = {name = "John Doe"}
person
您需要将函数调用和点语法包装在括号中,以将其传递给sprintf
:
sprintf "%s" (getPerson().name)