let GetVal (i,isMin,al, be)=
let b = new Board(board)
if b.SetBoardBool(i) then this.MinMaxAlphaBeta(b, isMin, al, be)
else -2
let valList = seq{
for i =0 to 8 do
yield (GetVal i (not isMin) alphaF betaF , not isMin)
}
我收到F#错误说:此值不是函数,无法应用。
valList是int和bool的元组序列,GetVal采用int bool int int并返回int。其中alphaF betaF是可变变量。
答案 0 :(得分:4)
或者您可以将GetVal的签名更改为不传递元组 - 如下所示:
let GetVal i isMin al be =
i,isMin,al和被称为 curried 参数。您可以在“参数的部分应用”主题下找到更多详细信息here。我会发布直接链接,但似乎没有。
答案 1 :(得分:2)
你的GetVal
函数在使用curried arguments [{1}}
(a,b,c,d)
这样的事情应该有效
a b c d