Posted on 2006-08-11 14:18
一秋草木 阅读(1341)
评论(4) 编辑 收藏 引用 所属分类:
C++
1.
概念描述
在已经分配的动态内存空间上使用
new
创建新的对象。这种形式的
new
表达式就是
placement new expression
。
2.
使用格式
new(place_address) type_specifier
①
place_address
,已经开辟空间的指针
②
type_specifier
,新分配对象的类型
3.
实例
int *pBuff = new int[1000];
long *pb = new(pBuff) long; //
即将
pBuff
内的一块大小为
sizeof(long)
的内存区域的
//
使用权给
pb
指向的对象。
4.
使用注意
①
需要
#include<new>
②
不需要
delete pb
;
//
因为并没有为
pb
开辟一块内存。
pb
指向的对象只有使用权
如果使用
delete []pBuff; //
意味着其内存空间上的所有对象都被
kill
。