已经开启了ARC dealloc 还可以用?
我的工程已经开启ARC了,但是我看-(void)dealloc还是可以实现的,那这个方法还是会被调用吗?还是就是个摆设?
什么时候会调用它?ARC都开起来了,这个留着还有什么用
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
我的工程已经开启ARC了,但是我看-(void)dealloc还是可以实现的,那这个方法还是会被调用吗?还是就是个摆设?
什么时候会调用它?ARC都开起来了,这个留着还有什么用
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(3)
官方文档说得很清楚http://developer.apple.com/library/ma...
用来在dealloc的时候手动解除delegate关系。
dealloc当然会被调用(通常是以被编译器自动插入代码的方式),也可以实现(尤其是如果有某些非Cocoa对象资源需要管理的时候)。
参考 CLANG 相关文档
仍会在对象彻底释放前调用dealloc方法。
ARC与非ARC的区别:ARC中dealloc中不得显式调用[super dealloc]、不得显式[obj release]。
而无需声明(编译自动生成)dealloc是SDK4就有的特性,和ARC无关。