ARC的@property定义:现在是强默认吗?

tra*_*per 40 xcode ios automatic-ref-counting

只需在新的xcode 4.3.1上运行ARC重构工具,并注意到我的(非原子,保留)属性正在换出(非原子)而不是(非原子,强),就像在前面的xcode中一样.

我的代码似乎在这次更改后运行正常,所以我假设它默认为强大,任何人都知道为什么ARC转换器的情况发生了变化?

ric*_*ter 57

是的,strong是Xcode 4.3及更高版本中的默认设置.它在LLVM文档和Apple的使用属性使用ARC的指南中都有记录.

  • ARC仅适用于对象类型的属性(和变量).属性所有权限定符仅适用于对象类型.无论你是否声明它们,原始类型的属性都有效地"赋值". (5认同)
  • 一位Apple工程师在TSI中证实了这一点.为了ARC内的一致性而改变了这一点.警告和文档都是错误的并且将被修复. (4认同)
  • 如果我用`@property(nonatomic)int value'声明原始数据类型属性会发生什么?它会自动被视为`assign`吗? (3认同)
  • 可能值得问一个单独的问题. (3认同)
  • @Augie看起来怎么样?鉴于自7.1.1问世以来我没有听说过数千个基于ARC的应用程序崩溃,我怀疑这没有改变. (2认同)