IOS开发之----ARC下的Dealloc保留原因 arc forbids dealloc

IOS开发之----ARC下的Dealloc保留原因 arc forbids dealloc

Dealloc

让我们看看这些错误,然后一个一个的修复他们。 我们从 dealloc 开始:


dealloc 中的每一行都会有一个错误。 我们不再被允许调用 [release] 了, 也不允许调用 [superdealloc]。 因为我们在 dealloc 不再做任何操作了, 所以我们可以直接把这个方法删除掉。

唯一一个留着 dealloc 方法的原因就是, 你需要释放一些不在 ARC 控制下的资源。 例如 Core Foundation对象中调用 CFRelease(), 对那些通过 malloc() 分配的内存调用 free(), 注销通知,停止 Tiner,等等。

如果你是一个对象的代理的话,有时必须显式的断开和它的连接,但通常这都是自动的。 大部分情况下,代理都是弱引用(我们马上会介绍到),当一个即将被释放的对象是其他对象的代理的话, 当这个对象被销毁时,代理指针将会被自动设置为 nil。弱指针在这之后会被自动清楚。

另外, 在你的 dealloc 方法中, 你仍然可以使用实例变量, 因为他们在这时候还没被释放掉。 在 dealloc返回之前,都不会被释放。

  

爱华网本文地址 » http://www.aihuau.com/a/25101017/366418.html

更多阅读

转载 网页开发之amr音频的播放后台判断音频长度 amr音频

原文地址:网页开发之amr音频的播放(后台判断音频长度)作者:平常心近来笔者开发时在前台需要播放amr格式的音频文件,中间几经波折最后还是成功了,特此分享出来希望能帮到大家(还包括后台判断amr音频长度) mp3格式播放大家都知道,amr格式就陌生

iOS开发之你真的懂GCD吗? ios开发 真机沙盒路径

你真的懂GCD吗?GCD是什么,你知道吗?你知道了GCD,你确定你会使用吗?这一篇文章是站在初学者角度去分析GCD,原因是这个很多iOS开发者根本就没用过,即使用过,不知道其中的原理。讲解之前认识

声明:《IOS开发之----ARC下的Dealloc保留原因 arc forbids dealloc》为网友一语呢喃分享!如侵犯到您的合法权益请联系我们删除