This commit is contained in:
krahets
2023-07-26 08:58:52 +08:00
parent 583d89729e
commit 6381f16506
45 changed files with 198 additions and 198 deletions

View File

@@ -34,9 +34,9 @@ comments: true
栈内存分配由编译器自动完成,而堆内存由程序员在代码中分配(注意,这里的栈和堆和数据结构中的栈和堆不是同一概念)。
1. 栈不灵活,分配的内存大小不可更改;堆相对灵活,可以动态分配内存
2. 栈是一块比较小的内存,容易出现内存不足;堆内存很大,但是由于是动态分配,容易碎片化,管理堆内存的难度更大、成本更高
3. 访问栈比访问堆更快,因为栈内存较小、对缓存友好,堆帧分散在很大的空间内,会出现更多的缓存未命中
1. 栈不灵活,分配的内存大小不可更改;堆相对灵活,可以动态分配内存
2. 栈是一块比较小的内存,容易出现内存不足;堆内存很大,但是由于是动态分配,容易碎片化,管理堆内存的难度更大、成本更高
3. 访问栈比访问堆更快,因为栈内存较小、对缓存友好,堆帧分散在很大的空间内,会出现更多的缓存未命中
!!! question "为什么数组会强调要求相同类型的元素,而在链表中却没有强调同类型呢?"