首页 > 代码库 > ios学习总结(三)

ios学习总结(三)

内存管理规则

获得途径

临时对象

拥有对象

alloc/new/copy

不再使用时释放对象

在 dealloc 方法中释放对象

任何其他方法

不需要执行任何操作

获得对象时保留,在 dealloc 方法中释放对象

内存管理规则摘要: 1、释放对象,可以释放其所占的内存,规则是:不再使用创建或者保持的对象时,就释放它们。 2、发送一条 release 消息不一定销毁对象,只有引用计数变为0 时,才销毁这个对象。系统向

对象发送一条 dealloc 消息来释放它所占的内存。 3、自动释放池在释放池本身的时候自动释放池中的对象。系统向每个对象发送一条release 消

息,对引用计数变为 0 的对象发送一条 dealloc 消息来释放它所占的内存。 4、若你的方法中不再需要一个对象时,但需要返回它,可发送一条autorelease 消息来加入自

动释放池。
5、若使用 alloc 或 copy 方法(或使用 allocWithZone:、copyWithZone:或 mutableCopy 方法

来直接创建对象,则由你负责释放它。每次retain 对象时,应该 release 或 autoreleas 它。6、除了上以规则中提到的方法之外,不必费心地释放其他方法返回的对象,这不是你的责任。 

ios学习总结(三)