Objective-C 只读属性是否需要指定强或复制?

发布于 2025-01-08 05:10:13 字数 221 浏览 0 评论 0原文

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

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

@property (nonatomic, readonly) NSString *name;

If I have a read-only string property, is it necessary to specify strong (or retain) or copy in the declaration? If I don't specify, is one of them assumed?

It seems to me the ownership attribute is only useful when you have a setter.

@property (nonatomic, readonly) NSString *name;

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

著墨染雨君画夕 2025-01-15 05:10:13

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

That is mostly correct. For a readonly property, strong, retain, weak, and assign have no effect. But if you also declare the property elsewhere as readwrite (most frequently in an anonymous category in the .m), then the other modifiers need to match.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文