当前位置: 代码迷 >> 综合 >> C++ new关键字用法
  详细解决方案

C++ new关键字用法

热度:44   发布时间:2024-01-27 07:04:40.0

C++中的new用法总结:

1.new operator:
这是最常见的用法,如:
class A{...}
A *a = new A;

2.placement new:
这个new仅在一个已经分配好的内存指针上调用构造函数,因此会覆盖原来的内容,如:
A *a1 = new A;
A *a2 = new(a1) A;
那么a2会覆盖a1的值,那么a1和a2的内容都是一模一样的。

3.operator new:
这个是运算符重载,常常用作申请内容,如:
class A
{
void* operator new(size_t size)
{
return malloc(size);
}

    void operator delete(void* p)
{
return free(p);
}
}
与之相对应的,也可将delete运算符重载。

  相关解决方案