内存分配
自动存储、静态存储和动态存储
存储区域主要为
栈
和自由存储区
,栈多服务于临时变量和一些非动态申请的数据类型
自由存储区或堆
通常为一个概念,存储动态申请的变量和数据类型(new)、vector
1、自动存储(栈)
自动存储的为
自动变量
,自动变量一般都是程序云心过程中函数的局部变量,常存储在栈
中,所以在执行代码时,是按照后进先出
进行变量存储,这也就意味着,在程序执行过程中,栈的大小是不断变化的。
2、静态存储(堆)
静态存储的两种方式:
1. 在函数外面定义
2. 在声明变量时,加上关键字static
3、动态存储(堆)
==new和delete==的应用,其管理着一个内存池
(在C++中也被称为自由存储空间或堆
),所创建的变量同存储静态存储的内存是分开的。