6

我想使用管道编写下一个函数:

A = 1/Sum[1-k](x^2)

所以当我写:

//Adaptive step
let a_Adaptive x =
    x
    |> Array.map (fun x -> x ** 2.0)
    |> Array.sum
    |> (**) -1.0

f# 解释(**)为多行注释,但我想将其用作函数。有什么建议么?

4

1 回答 1

7

您只需要在**:之前添加一个空格

let a_Adaptive x =
    x
    |> Array.map (fun x -> x ** 2.0)
    |> Array.sum
    |> ( ** ) -1.0

从 F# 规范:

要定义以 开头的其他运算符*,空格必须跟在左括号后面;否则(*被解释为注释的开始:

让 ( *+* ) xy = (x + y)

于 2013-09-22T16:29:11.890 回答