在 C++ 中,动态分配的内存(使用 new 和 malloc 运算符分配)的碎片整理如何工作?
C++ 堆中没有碎片整理,因为应用程序可以自由保留指向已分配内存的指针。因此,堆管理器无法移动已分配的内存。唯一可能的“碎片整理”是释放两个相邻的块。然后堆管理器会将这两个块组合成一个更大的空闲块,可以再次用于分配。