let x = ref 100 in
let f () = !x in
let x = ref 50 in
??? ; f ()
你应该通过插入一些东西得到50的答案? (不是影子)。但我现在不知道如何更改原始引用的值,考虑到x:= 50现在将适用于SECOND x ....
答案 0 :(得分:4)
如果它确实是一个“初学者问题”,那可能不是预期的答案。但我不知道“预期的答案”是什么,所以让我们反而入侵。
Obj.(obj (field (repr f) 1)) := 42;;
答案 1 :(得分:1)
现在无法访问原始x
。所以......影子f
!