您的位置:首页 > 其它

关于autorelease一个认识的误区

2012-01-09 17:49 351 查看
伪代码如下

-(void)funciton{ 

A *a= [[ [A alloc]init ]autorelease ];

}

 之前疑为 在函数中局部变量声明称autorelease,当函数语句块结束后 a 会释放掉所占内存,但是结果不是,object-c 管理内存的方式有点变态,a 释放是在其对应的autoreleasepool被release的时候才清空!大家务必注意,尤其是刚从c c++转过来的兄弟们

为了可怜的手机内存 还是写成

-(void)funciton{ 

A *a= [ [A alloc]init ];

……

[a release];

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  手机 c