new和delete运算符

 对于C++应用程序来说,数据主要有两种存储方式,一种是栈存储方式,一种是堆存储方式。栈存储通常用于存储战友用空间小、生命周期短的数据。如:局部变量和函数参数。

栈存储-->>局部变量和函数参数-->>空间小,生命周期短

堆存储-->>全局变量和静态变量-->>空间大,生命周期长

::用户可以使用new运算符在堆中开辟一个空间,使变量存储在堆中.

int *pData = new int; //定义一个整形指针,使用new运算符在堆中开辟空间
*pData = 100; //为指针在堆中的数据赋值
......
delete pData; //释放pData在堆中占用的空间

int *pData = new int(100); //pData 所指向的数据为100
int *pData = new int[3];
pData[0] = 2;
pData[1] = 5;
pData[2] = 6;
//使用new运算符为数组分配空间时,不能为数组进行初始化,除非变量是一个类对象,并且对象的类型(类)提供了默认的构造函数。
//此外,在释放使用new运算符为数组分配的空间时,需要使用delete [] 来释放.例如:
delete [] pData;
原文地址:https://www.cnblogs.com/pythonschool/p/2745433.html