【发布时间】:2011-11-03 03:39:57
【问题描述】:
我看到很多讨论说我应该使用 copy 作为 NSString 属性,因为它会阻止其他人在我背后更改它。但是为什么我们不为它设置 readonly 属性呢?
更新
感谢您回答我的问题。但问题是对于 NSString 属性,你总是不希望别人修改它,对吧?您可以自己修改它,但绝对不能由其他人修改。我想大多数时候 NSString 都会设置它的初始值(由你或其他人),之后只有你会修改它。那为什么不直接使用只读属性
实际上我大部分时间都在使用副本。但后来我意识到大多数时候我只在我的 init 方法中使用这些设置器。所以我认为我应该在这种情况下使用 readonly 而不是 copy。
所以让我这样问:如果您只在 init 方法中为您的 NSStrings 使用这些设置器,那么您应该使用 readonly 代替。这是一个合理的结论吗?
【问题讨论】:
标签: objective-c memory-management properties nsstring