MySQL内存管理机制浅析
一、placement new的定义
通常情况下,C++中通过用new方式申请内存空间时,是在系统的堆内存空间中进行分配,底层使用C标准库的malloc()
完成内存分配工作。
因此本次申请的内存空间大小,是根据程序运行时对象的大小及使用情况来决定的。
但是某些场景中,可能需要预先分配完成内存空间,然后再把对象"放置"在之前预先分配的内存空间上。即所谓的placement new
操作。
定点放置的new操作的语法不同于普通的new操作,比如:我们一般在堆中申请内存空间,通常写:
Object* o = new Object();