我知道浮点数通常在 OCaml 中装箱,但我的困难在于这个词:通常。什么时候不装箱?而且,如果它们没有装箱,它们是如何表示的,以便运行时将它们识别为不同于整数或指针?
我找到了 http://caml.inria.fr/pub/old_caml_site/ocaml/numerical.html ,其中列出了浮点数未装箱的某些时间,但它已有 11 年的历史了,所以我不知道它是否仍然是最新的,并且它没有解释它们是如何表示的盒装。
我是 OCaml 的新手,很抱歉,如果这是一个愚蠢的菜鸟问题。谢谢!
最佳答案
当在数组中和在所有字段都是浮点的记录中时,浮点数被取消装箱。对于这些情况,有一个特殊的标签,将集合标记为包含未装箱的浮点数。
这在 OCaml 手册的 Section 19.3 中有描述。
关于floating-point - OCaml float 装箱或未装箱?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18964144/