signal SIGABRT

往往是,一个对象释放了多次,即多次释放。多为粗心所致。还有一种过渡释放,很隐蔽。查了很久才知道!NSUserDefaults*userDefault=[NSUserDefaultsstandardUserDefaults];self.arrCollectionData=[userDefaultobjectForKey:@”TV_Collection”];…

大家好,又见面了,我是你们的朋友全栈君。

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

 

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

 

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 alloc] initWithArray:dictSorted];

转载于:https://www.cnblogs.com/Songxin/p/3772584.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/126150.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Chain of Responsibility职责链[通俗易懂]

    Chain of Responsibility职责链[通俗易懂]职责链 Chain of Responsibility动机模式定义实例结构要点总结笔记动机在软件构建过程中,一个请求可能被多个对象处理.但是每个请求在运行时只能有一个请求者.如果显示指定.将必不可少地带来请求发送者与接收者地紧耦合如何使请求地发送者不需要指定具体地接收者?让请求地接收者自己在运行时决定来处理请求,从而使两者解耦模式定义使多个对象都有机会处理请求 从而避免请求地发送者和接收者之间地耦合关系.将这些对象形成一条链.并沿着这条链传递请求.直到有一个对象处理它为止实例#include&

    2022年8月9日
    4
  • 深入了解mysql它BDB系列(1)—BDB基础知识

    深入了解mysql它BDB系列(1)—BDB基础知识

    2021年12月30日
    22
  • 分布式 mybatis-plus 逻辑删除不生效 升级后org.mybatis.logging.LoggerFactory报错[通俗易懂]

    分布式 mybatis-plus 逻辑删除不生效 升级后org.mybatis.logging.LoggerFactory报错[通俗易懂]解决方案:第一步:升级mybatisplus版本到3.2.0第二步.多添加一个扩展包<dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-extension</artifactId&gt…

    2022年6月2日
    58
  • jenkins教程

    jenkins教程最近接了公司的挺多运维的活,刚开始很新鲜,后面天天部署各种项目的测试环境和生产环境,加上每个项目n个服务,我就变成了骚是骚,就是太累了。于是我想到了之前一直想用的jenkinsjenkins的作用和它的图标表现出来的一样,就是为了做工作的时候,能够比较轻松,像一个绅士一样游刃有余。一、安装1、进入官网,找到download找来找去,在最下面有个.war因为我是做…

    2022年5月15日
    42
  • matlab如何做向量内积,matlab2010a的bug:* 向量内积的错误解决方案「建议收藏」

    matlab如何做向量内积,matlab2010a的bug:* 向量内积的错误解决方案「建议收藏」很偶然地发现了一个matlab2010a的一个bug:在某种非常特殊的情况下,matlab2010a的向量内积,即*指令会产生错误的结果。下面陈述具体现象:1.程序源代码(注:运行该程序时需要把den1.mat和kern1.mat这两个matlab数据文件与程序放在同一个文件夹中)clc;clear;load(‘den1.mat’);load(‘kern1.mat’);x=kern;y=d…

    2022年9月24日
    2
  • mapGetters开启命名空间

    mapGetters开启命名空间https://www.cnblogs.com/sea-breeze/p/11321961.html

    2022年5月27日
    47

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号