C++ 管理数据内存的方法

C++有3种管理数据内存的方式:自动存储、静态存储和动态存储(有时也叫做自由存储空间或堆heap)

1. 自动存储

自动变量是一个局部变量,作用域为包含它的代码块。

自动变量通常存储在栈中,执行代码块时,其中的变量依次加入到栈中,离开代码块时,按相反的顺序释放这些变量,这被称为后进先出(LIFO)。

 2. 静态存储

静态存储是整个程序执行期间都存在的存储方式。使变量成为静态的方式有两种:一种是在函数外定义;一种是在声明变量时使用关键字static。

3. 动态存储

指由new和delete管理的内存池。该内存池与自动变量和静态变量的内存是分开的。

使用new运算符在自由空间上创建变量时,没有调用delete将会发生内存泄漏。

原文地址:https://www.cnblogs.com/sungnox/p/7588063.html