【问题标题】:Does an Objective-C readonly property need to specify strong or copy?Objective-C 只读属性是否需要指定强或复制?
【发布时间】:2012-02-23 00:01:21
【问题描述】:

如果我有一个只读字符串属性,是否需要在声明中指定strong(或retain)或copy?如果我不指定,是否假定其中之一?

在我看来,所有权属性只有在你有 setter 时才有用。

@property (nonatomic, readonly) NSString *name;

【问题讨论】:

标签: objective-c declared-property


【解决方案1】:

这基本上是正确的。对于 readonly 属性,strongretainweakassign 无效。但是,如果您还在其他地方将属性声明为readwrite(最常见的是.m 中的匿名类别),那么其他修饰符需要匹配。

【讨论】:

  • 好答案!但是如果 readonly 属性没有 getter 并且没有在内部重新声明为 readwrite ,那么 strong 也应该适用于该属性,因为它现在有一个 ivar,这是正确的吗?
猜你喜欢
  • 2015-08-14
  • 1970-01-01
  • 2011-06-02
  • 1970-01-01
  • 1970-01-01
  • 2011-01-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多