OC阅读笔记十九:禁用retainCount

本文深入探讨了Objective-C与Swift两种语言在iOS开发领域的应用与区别,包括语言特性、性能优化及实际项目案例,旨在为iOS开发者提供更高效、灵活的编程选择。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

    在ARC中,使用retainCount会报错,此方法已经被正式废弃.即使在MRC中,也不要使用retainCount.

    retain只能返回某个时间点上的引用计数,但是我们并不知道该对象是否已经添加到自动释放池中,使用retaincount 反而会误导开发者错误判断对象的引用计数值.

    系统会尽可能的将NSString实现成单例对象,如果字符串是个编译期常量,那么编译器会将NSString所表示的数据放到应用程序的二进制文件里.运行时就可以直接使用,无需创建NSString对象.

    NSNumber也类似.它使用"标签指针"把与数值有关的全部数据放入指针值里,无需创建NSNumber对象,这种优化只会在某些特殊场合使用.

    如上文所提到的单例数据对象,其保留计数绝对不变,该对象的保留和释放操作都是空操作.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值