程序的内存模型-new运算符
- new操作符
new基本语法
利用new在堆区中开辟一个数组,在堆区中开辟一段连续的内存空间




点击查看代码
#include<iostream>
#include<string>
using namespace std;
//1、new的基本语法
int* func()
{
//在堆区创建一个整型数据
//new返回是 该数据类型的指针
int *p = new int(10);
return p;
}
void test01()
{
int *p = func();
cout << *p << endl;
//堆区的数据由程序员管理开辟,程序员释放
//如果想释放堆区的数据,利用关键字delete
delete p;
cout << *p << endl; //内存已经被释放,再次访问就是非法操作,会报错
}
//2、在堆区利用new开辟数组
void test02()
{
//在堆区,创建整型数据数组
int *arr = new int[10];//10代表数组有十个元素
for(int i = 0; i < 10; i++)
{
arr[i] = i;
}
for(int i = 0; i < 10; i++)
{
cout << arr[i] << endl;
}
//释放堆区数组
//释放数组的时候 要加[]才可以
delete[] arr;
}
int main(){
test01();
test02();
system("pause");
return 0;
}

浙公网安备 33010602011771号