怎么在一块指定的内存下调用构造函数
如何在一块指定的内存上调用构造函数?
由于特别的原因,我需要不通过重载new实现内存池。那么应当如何在给定地址上调用构造函数?
------解决方案--------------------
用placement new不算重载吧?
由于特别的原因,我需要不通过重载new实现内存池。那么应当如何在给定地址上调用构造函数?
------解决方案--------------------
用placement new不算重载吧?
- C/C++ code
int a[10]; int *p = new(a) int;
------解决方案--------------------
不必调用,你可以把待释放的内存用空闲链表保存起来,最后统一释放,链表节点结构自己定义一下
------解决方案--------------------
------解决方案--------------------
class A
char* p=new char(sizeof(A));
A* q=new(p) A;
使用placement new可以实现
------解决方案--------------------
placement new