3

このコードでは:

let f(a,b,c) = a * b + c - (d())
let g(a,b,c) = a * b + c -(d())

f、、です。(int*int*int) -> int_g(int*int*(int*int)) -> int

d()の周りの角かっこを削除するgと、「連続する引数はスペースで区切るか、4倍にする必要があります」というエラーが発生します。

どうしたの?

4

1 に答える 1

2

@bytebuster は彼のコメントで非常に正しいですが、素人の言葉で言えば ;-] 1 つはバイナリ減算演算子として解析され、もう 1 つは単項否定演算子として解析されます。ここでは単に演算子の優先順位と戦っています。

于 2013-01-19T10:05:28.583 に答える