我从 F# 开始,一些代码结构让我很奇怪。例如:
我有下一个代码:
let mutable s = 10
s <- 1 + s
printf "%i" s
从数学方面来看,一切都很清楚。我将“s”标记为可变并将新值分配给“s”。结果是 11。
让我试试其他部分的代码:
let mutable s = 10
s = 1 + s
printf "%i" s
这段代码有效。但我认为s = 1 + s
从数学方面来说这有点奇怪。执行结果为 10。
我的问题,最后一个样本发生了什么?为什么我没有收到错误消息?只是s = 1 + s
被忽略了吗?为什么?我在输出中没有任何错误。