おそらく別のばかげた F# 初心者の質問です...しかし、それでも私を悩ませています
オンラインでこれに対する答えが見つからないようです...間違った用語を検索したせいかもしれませんが、ええ
とにかく私のコードは次のようになります:
let counter() =
let mutable x = 0
let increment(y :int) =
x <- x + y // this line is giving me trouble
printfn "%A" x // and this one too
increment // return the function
Visual Studio はx
、それが無効な方法で使用されていることを教えてくれます。変更可能な変数はクロージャーによってキャプチャできません。
何故ですか?そして、それを変異させるにはどうすればよいですか?