私はレコード型 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 のすべてのフィールドは、0 から 9 までの値ではなく、値 9 を持ちます。ff.(i).x は正しいですか? 私も試しました
for i=0 to max-1 do f0.x <- i;ff.(i) <- f0;done;;
しかし、結果は同じです... (私は OCaml バージョン 4.00.1 を使用しています) 何が問題なのですか? どなたかヒントを頂けたら嬉しいです!