【发布时间】:2012-12-22 09:11:31
【问题描述】:
我有一个记录类型 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) 怎么了?如果有人能给我提示,我会很高兴!
【问题讨论】: