我有一个记录类型 tt 的数组 - 最初包含更多组件;-) - 并且喜欢在 for 循环中更改其值:
type tt={mutable x: int};;
let f0={x= -1};;
let max=10;;
let ff=Array.create max f0;;
for i=0 to max-1 do ff.(i).x <- i;done;;
然而,ff 的所有字段的值都是 9,而不是从 0 到 9。ff.(i).x 是否正确?我也试过
for i=0 to max-1 do f0.x <- i;ff.(i) <- f0;done;;
但结果相同...(我使用的是 OCaml 版本 4.00.1)有什么问题?如果有人能给我提示,我会很高兴!