开发者社区> 问答> 正文

使用 ARC 中copy的困惑

在使用ARC时有一个NSString属性,需要@property(nonatomic, copy)。但是当我将我的工程转成ARC后,在初始化方法中依旧存在:
_someString = [someStringParameter copy]

这是bug吗?还是在ARC中还是需要指出copy。需不需要这样:
self.someString = someStringParameter

展开
收起
爵霸 2016-03-17 10:48:25 2002 0
1 条回答
写回答
取消 提交回答
  • 首先,这不是bug

    其次,还是需要明确说明copy的

    你通过copy分配实体变量,在ARC中是允许的。实现方法:
    _someString = someStringParamenter;

    可以让ARC自动保留(不是copy),出现的结果:
    _someString = [someStringParameter retain];

    这是因为在ARC变量下默认会指示__strong 标示符。

    2019-07-17 19:04:46
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载