memory-management - 为什么引用类型存储在堆中?

标签 memory-management data-structures heap-memory

在某些语言中,动态分配的对象存储在堆中。 查看数据结构的复杂性表(如 this one ) 我发现堆相对于树等其他类型的数据结构的唯一优势是可以更好地处理最大值。

为什么堆用来存储那些对象而不是其他数据结构?
处理最大值对内存管理很重要吗?为什么?

最佳答案

用于存储动态分配对象的“堆”与称为“堆”的数据结构完全无关。它们是两个完全不同的同名事物。

参见 Wikipedia作为两种堆的引用。它链接到 "Heap (data structure)" 的一篇文章, 另一个是 "Heap (free store)" .

关于memory-management - 为什么引用类型存储在堆中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22425544/

相关文章:

xml - Groovy:使用 StreamingMarkupBuilder 处理大量数据

python - 我什么时候应该在 python 中使用 del?

c - 内核代码中(可能)存在简单的编码错误

ios - Xcode:在ARC中编译.c文件?

java - 在 Java 中循环遍历 List<Map<Integer, Map<Long, Integer>>>

c++ - 在函数 : Invalid address specified to RtlValidateHeap 中使用 delete[]

algorithm - 平衡二叉树与索引跳过列表

algorithm - 什么数据结构可以用来存储防火墙规则?

android - Android Studio 1.3.1 中的错误 Java 堆大小

c - 复制到缓冲区期间出现段错误