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中不要使用内存池和垃圾回收! 

posted @ 2011-04-08 12:18  vieri122  阅读(1523)  评论(0编辑  收藏  举报