相关疑难解决方法(0)

为什么 Obj-C 属性默认所有权“分配”而不是“强”

我正在将 Swift 类添加到一个旧项目中。一切顺利,直到我尝试向 Swift 类添加一个属性。生成的标头无法编译。

在此处输入图片说明

我认为问题在于,在生成的代码中,Swift 省略了strong所有权,仅将其声明为nonatomic. 这通常应该足够了,因为@property 应该默认为strong所有权,对吗?

所以基本上这些是等价的:

  • @property (nonatomic) NSDate *aDate;
  • @property (nonatomic, strong) NSDate *aDate;

但是,就我而言,根据编译器消息,它似乎默认为assign而不是strong

我正在使用 Xcode 6 GM,并且该项目已打开 ARC。

知道为什么不默认为strong吗?我可以以某种方式改变它吗?

xcode objective-c ios swift xcode6

3
推荐指数
1
解决办法
725
查看次数

标签 统计

ios ×1

objective-c ×1

swift ×1

xcode ×1

xcode6 ×1