ios 开发内存管理原则
- 当你使用new alloc copy方法创建一个对象是,该对象的引用计数为1。当你不在使用该对象时,你要负责向该对象发送一条release(或者时autorelease)消息。
- 当你通过其他任何方法获得一个对象时,我们(方法的调用者和方法的实现者)都假设该对象的引用计数为1,而且已经被设置成自动释放。如果你把它当临时对象来用,你不需要执行任何释放(release或autorelease)操作。但如果你打算拥有它,或者说是你当算把它保存成为你的某个成员变量,则你需要在保存对象时(一般在setXXX方法中)把引用计数加1,在操作完成后(一般时在dealloc中)释放该对象(引用计数减1)
一般setXXX实现如下:
-(void)setXXX: (NSObject)obj{
[obj retain];
[m_var release];//m_var 为成员变量
m_var = obj;
}
iphone中不要使用内存池和垃圾回收!
希望天一直是蓝的,真的很美......