IOS Objective-c 内存管理

来源:互联网 发布:淘宝网运动女卫衣 编辑:程序博客网 时间:2024/05/16 00:46

  1:手动内存管理:

内存分为5个区,平时我们申请的变量都存放在栈区(包括指针变量),但是对象却保存在堆区,

堆区和栈区的区别在于,栈区存放的变量在程序执行到变量所在的作用域结束时系统便回收栈区变量的内存,但是当执行到对象的作用域结束时,却不会自动回收对象所占的内存,需要程序员手动释放.在默认创建一个对象的时候,对象的应用计数器就是1;

2: ARC:Automatic(自动) Reference(引用) Counting(计数) ,也就是自动内存管理,有了ARC,程序员便不用手动释放对象所占的内存,由编译器和操作系统帮我们在不需要对象时,自动释放对象内存.

从网上获悉

Mac OS X v10.6和v10.7(64位应用)的Xcode 4.2以上版本支持ARC,IOS 4 和 IOS 5下,

ARC都能工作,但Weak不支持Mac OS X v10.6 和IOS 4,所以要想在IOS 4 下运行ARC的程序,只能用strong.

1)支持ARC的开发环境:Mac OS X v10.6 和 v10.7 (64位应用) 的Xcode 4.2以上版本2)支持ARC的运行环境:  2.1 支持weak:iOS 5 或 Mac OS X v10.7以上  2.2 不支持weak: iOS 4 或 Mac OS X v10.6

0 0
原创粉丝点击