写在前面:学习ios一月有余,边学边忘,今日工作之余,总结一下自己的学习过程,一边来日温习之用,总结不当之处烦请大家多多斧正,尔等共勉之。
内存管理
在ios程序中使用New ,alloc,copy关键字初始化一个对象时,对象计数器就会+1。
当给对象发送一条retain消息时 对象计数器+1
例如 Person * person=[[Person alloc]init];
[p retain];
int count=[p retainCount];//返回当前对象计数器的数值;
此时的Person的对象计数器数值为2,因为在这两句代码中有 alloc, retain
person的对象计数器就为2,retain对象方法 返回对象本身 ;
使用release对象方法对象计数器-1
[p release];
当 对象计数器为0时系统自动销毁当前对象,对象销毁时调用-dealloc方法
重写dealloc方法可以观察到对象销毁,重写dealloc方法是一定要调用[super dealloc]方法,否则会报错
-(void) dealloc
{
Nslog(@"Person 对象销毁了");
[super dealloc];
}
时间: 2024-10-31 09:15:22