一、变量,本质代表一段可以操作的内存,她使用方式无非就是内存符号化+数据类型
1.保存变量有三个区域:
1》静态存储区
2》stack
3》heap
2.变量又根据声明的位置有两种称呼:
1》全局变量
2》局部变量
3.三种存储区分别存储那种变量
1》静态存储区 - 在编译分配空间的时候初始化,程序运行时存在
全局变量、静态局部变量
2》stack
栈存放局部变量(这个变量是引用变量或编辑器负责自动释放的变量,例如:int,long,double基础类型,她们并没有动态创建出来的,所以她们存入栈中,拥有作用域的特性)
3》heap
heap的管理依赖于运行时环境,C使用malloc,C++使用new,O-C使用alloc等;
简单说,就是通过指针(*point)访问的内存,需要释放,拿O-C对象举例:NSString的一个对象,动态方法[[NSString alloc] init]的时候就会在堆中创建一块内存,你需要管理她,也就是说free()她,这就是iOS的内存管理,她们并不具备作用域的特性。
二、iOS内存管理