new运算符可以用于创建一个堆空间,成功返回首地址,失败抛出异常,需要自己通过delete手动释放。
语法:
指针变量 = new 数据类型;
指针变量 = new 数据类型(初始化的值);
指针变量 = new 数据类型[长度n];
指针变量 = delete 数据类型;
指针变量 = delete[] 数据类型;
如:
#include <iostream>
using namespace std;
int main()
{
int *p = new int;
cout << *p << endl;
int *pStr = new int[50];
cout << *pStr << endl;
delete p;
delete[]pStr;
return 0;
}
new的作用:
1.内存分配(operator new)
2.调用构造函数
delete的作用
1.调用析构函数
2.释放内存(operator delete)