gpt4 book ai didi

functional-programming - 为什么产品比记录使用更多的内存?

转载 作者:行者123 更新时间:2023-12-04 22:30:21 24 4
gpt4 key购买 nike

根据此演示文稿( http://oud.ocaml.org/2012/slides/oud2012-paper13-slides.pdf ,PDF 第 4 页),以下两种数据结构使用不同的内存量

type t1 = { f1: float; f2:float};;
type t2 = (float * float);;

并且 t1 使用的内存比 t2 少,有人可以向我解释为什么会这样吗?

最佳答案

http://caml.inria.fr/pub/docs/manual-ocaml/intfc.html#sec425 的 19.3.3 说:

Arrays of floating-point numbers (type float array) have a special, unboxed, more efficient representation. These arrays are represented by pointers to blocks with tag Double_array_tag.



引入它是为了有效地处理大浮点数组,但这也适用于仅带有浮点数的记录类型。

https://realworldocaml.org/v1/en/html/memory-representation-of-values.html 也是一个很好的文档,它解释了 OCaml 的内部值表示。

关于functional-programming - 为什么产品比记录使用更多的内存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29742950/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com