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)
}
Run Code Online (Sandbox Code Playgroud)
我收到一个F#错误说:此值不是函数,无法应用.
valList是int和bool的元组序列,GetVal接受int bool int int并返回int.其中alphaF betaF是可变变量.
或者您可以更改 GetVal 的签名以不传递元组 - 像这样:
let GetVal i isMin al be =
Run Code Online (Sandbox Code Playgroud)
i、isMin、al 和 be 称为柯里化参数。您可以在“参数的部分应用”主题下找到更多详细信息。我想发布一个直接链接,但似乎没有。