ios知识点总结

一:内存管理

1.autorelease NSAutoreleasePool对象

提问:如果autorelease NSAutoreleasePool对象会如何?

NSAutoreleasePool * pool = [[NSAutoreleasePool alloc]init];
[pool autorelease];

回答:发生异常

*** Terminating app due to uncaught exception 'NSInvalidArgumentException'

reason: '*** -[NSAutoreleasePool autorelease]: Cannot autorelease an autorelease pool'

通常在使用Objective-C,也就是Foundation框架时,无论调用哪一个对象的autorelease实例方法,实现上是调用的都是NSObject类的autorelease方法。但是对于NSAutoreleasePool类,autorelease实例方法已经被该类重载,因此运行时就会出错。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 37.cocoa内存管理规则 1)当你使用new,alloc或copy方法创建一个对象时,该对象的保留计数器值为1...
    如风家的秘密阅读 988评论 0赞 4
  • 1.1 什么是自动引用计数 概念:在 LLVM 编译器中设置 ARC(Automaitc Reference Co...
    __silhouette阅读 5,560评论 1赞 17
  • *面试心声:其实这些题本人都没怎么背,但是在上海 两周半 面了大约10家 收到差不多3个offer,总结起来就是把...
    Dove_iOS阅读 27,744评论 30赞 472
  • 参考此文:http://www.2cto.com/kf/201403/284687.html@看到这个关键字,我们...
    如风家的秘密阅读 660评论 0赞 2
  • 呐,先说明一下,我可能,是个双。但是就目前而言我还没有对哪个女孩动过心,唯一一次很冲动是在北京另一个长城上偶...
    瞳眬JC阅读 362评论 0赞 1

友情链接更多精彩内容