C++的布局new操作符

传统的new操作符只能在动态内存中得到空间,如果我们想要重一个静态内存中得到一个空间,该怎么做呢?

就用布局new操作符

#include <iostream>
#include <new>
using namespace std;
int main()
{
	char buffer[10];
	char *p = new (buffer) char[sizeof(buffer)];
	p[9] = 'a';
	cout<<buffer[9];
    return 0;
}

p指针指向了buffer的内存空间,可以直接对buffer进行写值,而且p等于buffer数组的首地址。

注意:这里不能对p进行释放空间。

猜你喜欢

转载自blog.csdn.net/QQ2558030393/article/details/93720685