一、对象------>release(retain -1)----------->(当retain count=0时)dealloc方法调用-------->销毁
说明:
1、销毁对象时肯定先走release方法,如果之后retain count还大于1,则不会释放如果retain count=0,则自动执行dealloc方法,进行销毁
2、执行alloc 方法和copy方法,retain count才会加1.
3、指针赋值时,retain count 不会+1,要想+1,手动调用retain
二、当创建一个对象时,有四种方式 alloc,new,copy, mutablecopy,
用完了以后需要手动调用release才行。那么有没有不需要手 动调用的。答案:autorelease
在创建对象的时候这样做
[[[classA alloc] init] autorelease] 这样建立的对象,就具备autorelase能力, 后面就不需要再调用release了。那为什么?