Obj-C:参考还是副本?

发布于 2024-08-24 00:49:35 字数 152 浏览 6 评论 0原文

产品项是副本,还是只是对 NSArray 中对象的引用?是否需要释放?考虑到没有分配,我认为不需要释放,对吗?

ProductItem *item = [appDelegate.productTextList objectAtIndex:[indexPath row]];

Is the product item a copy, or just a reference to the object in the NSArray? Does it need to be released? Considering there is no alloc, I assume there is no need for release, correct?

ProductItem *item = [appDelegate.productTextList objectAtIndex:[indexPath row]];

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

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

发布评论

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

评论(2

今天小雨转甜 2024-08-31 00:49:35

它是指向 ProductItem 类的指针。

如果您采取了一些措施来增加对象的保留计数,则应该释放该对象。即alloc/initcopy或调用retain

It is a pointer to the ProductItem class.

You should only release an object if you have done something to increase it's retain count. I.e. alloc/init, copy, or call retain.

栖迟 2024-08-31 00:49:35

它只是一个ProductItem类型的指针,所以它不是一个副本。

您的引用保证在对 objectAtIndex 的调用范围内有效(它在对象上调用 autorelease)。如果您想将其保留更长时间,则需要保留它并负责在使用完毕后将其释放。

It's just a pointer of type ProductItem, so it's not a copy.

Your reference is guaranteed to be valid in the scope of the call to objectAtIndex (it calls autorelease on the object). If you want to keep it around for longer you need to retain and are responsible to release it when you are done with it.

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