码迷,mamicode.com
首页 > 其他好文 > 详细

signal SIGABRT

时间:2014-06-11 12:10:31      阅读:193      评论:0      收藏:0      [点我收藏+]

标签:style   color   strong   cti   rgb   管理   

往往是,一个对象释放了多次,即多次释放。多为粗心所致。

 

还有一种过渡释放,很隐蔽。查了很久才知道!

 

NSUserDefaults *userDefault = [NSUserDefaults standardUserDefaults];

self.arrCollectionData=[userDefault objectForKey:@"TV_Collection"];

 

注意:这种写法是错误的!因为,我并没有自己将内存分配给arrCollectionData,这样,编译器对该块内存有控制权,而不是我!

所以,某个时刻,我不能保证arrCollectionData有效。

 

我更不能在程序最后,显示的进行[_arrCollectionData release];操作!

 

本着,谁分配谁管理的原则!

 

为了保证正确性,我改写成了如下形式!

 

NSUserDefaults *userDefault = [NSUserDefaults standardUserDefaults];

NSArray *dictSorted=[userDefault objectForKey:@"TV_Collection"];

self.arrCollectionData=[[NSMutableArray allocinitWithArray:dictSorted];

signal SIGABRT,布布扣,bubuko.com

signal SIGABRT

标签:style   color   strong   cti   rgb   管理   

原文地址:http://www.cnblogs.com/Songxin/p/3772584.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!