C++中利用 new操作符在堆空间开辟数据。
堆区开辟的数据,由程序员手动开辟,手动释放,释放利用操作符 delete
语法:new 数据类型
说明:利用new创建的数据,会返回该数据对应的类型的指针
举个例子:
int* test()
{
int* a = new int(100);
return a;
}
int main()
{
int* p=test();
cout<<*p<<endl;
cout<<*p<<endl;
//利用delete释放堆区数据
delete p;
//cout<<*p<< endl;//报错,释放的空间补课访问
system("pause");
return 0;
}
还可以在堆区开辟数组
利用 **new int[max]开辟数组
利用delete[ ]**释放数组内存
例子:
//堆区开辟数组
int main() {
int* arr = new int[10];
for (int i = 0; i < 10; i++)
{
arr[i] = i + 100;
}
for (int i = 0; i < 10; i++)
{
cout << arr[i] << endl;
}
//释放数组 delete 后加 []
delete[] arr;
system("pause");
return 0;
}