我刚刚听说,C++ 有两种内存块,可以在运行时分配和释放。据说,“malloc”和“free”使用称为Free Memory Space的内存,“new”和“delete”使用Heap。
好吧,我想知道 Free Memory Space 和 Heap 有什么区别?
C++ 的operator new的底层实现是否依赖于 C 的 malloc?
如果“new”和“malloc”确实使用了不同的内存块,那么编译器是否有必要为这两种块(分别)保留一定数量的内存,以防止“new”分配的内存和“new”分配的内存重叠的“malloc”?