考虑到 ref 运算符,我很难理解它的应用以及以下指令的含义:
1.
在这个定义中我定义什么?
- val ref x=ref 9;
val x = 9 : int
2.
我在这里用 ref x:= ref 12 做什么?
- val x= ref 8;
val x = ref 8 : int ref
- ref x := ref 12;
val it = () : unit
- x;
val it = ref 8 : int ref
val ref x = ref 9
定义x
to be 9
- 就像你写的一样val x = 9
。这是因为ref
是一个构造函数,因此它的模式与值匹配ref 9
反对模式ref x
,这绑定了x
到9.当然可以这样写,而不是只写val x = 9
没有什么意义。
当你写的时候ref x := ref 12
,你创建一个新的ref
(类型int ref ref
) 指的是x
。然后你立即改变这个新的ref
参考ref 12
而不是为了x
。自新ref
您创建的内容永远不会存储在您可以访问的任何地方,这不会产生明显的影响。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)