标签:
2全局变量数组+retain
3方法返回对象中,稍后释放对象,return [xxx autorelease];
自动管理关:build setting-> gar ->obc arc ->no
查看保留计数/引用计数retainCount
alloc copy retain new 递增引用计数+1 //addobject,addsubview…都可以引起引用计数的增加,系统增加不用管。
release 递减引用计数-1 //当引用计数为0的时候被销毁
我们可以使一个对象的引用计数增加或者减少;但是系统也可以,系统增加的,系统会自己处理,再减少
虽然输出结果为1,单我们认定为0,这个对象也就处理完成
//局部变量的释放是再它的作用域内
//全局变量的 释放再类的dealloc方法中
- (void)dealloc //本个视图消失加载
{
[super dealloc];
}
为了防止不经意间使用了无效对象,一般再release之后都会清空指针。
悬挂指针:people = nil;
赋新值:
当你想给一个对象重新赋值,必须先释放旧值 [ xxx release]再赋予新值
局部:用类方法创建对象,不需要自己释放。自动释放autorelease
全局:用类方法创建,是一个自动释放的对象,再本方法内可以使用,出了此方法,系统会把它释放
想保留对象用[xxx retain];
别的地方想用,再赋予的时候要retain一份;
标签:
原文地址:http://www.cnblogs.com/abin37/p/4777032.html