【已解决】iOS编程过程中出错:’autorelease’ is unavailable: not available in automatic reference counting mode, AR

http://www.crifan.com/ios_error_autorelease_is_unavailable_not_available_in_automatic_reference_counting_mode_arc_forbids_explicit_message_send_of_autorelease/

【问题】

给Your Second iOS App的BirdWatching中,添加自定义日期过程中,参考别处代码,拷贝过来一段代码:

?
1
self.dateFormatter = [[[NSDateFormatter alloc] init] autorelease];

结果出现错误:

autorelease is unavilable not available in automatic reference counting mode

 

【解决过程】

1.其实错误很明显,就是说,autorelease不能使用,原因在于我们之前创建当前iOS程序的时候,选择了“Use Automatic Reference Counting”,即使用了ARC,自动引用计数,所以此处,在写代码的时候,就不允许你再手动添加autorelease这个关键字了。

对应的,编译器会帮你自己优化生成对应的释放内存的操作。

所以,解决办法很简单,那就是直接删除autorelease这个关键字,变成:

?
1
self.dateFormatter = [[NSDateFormatter alloc] init];

即可。

 

【总结】

在创建iOS项目时,如果选择了"Use Automatic Reference Counting",那么代码中,自然就不需要再写autorelease了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值