gpt4 book ai didi

iphone - 不同的内存管理ARC/无ARC

转载 作者:行者123 更新时间:2023-12-03 21:18:38 24 4
gpt4 key购买 nike

我必须将简单的 ARC 代码转换为非 ARC。虽然它相对简单,但我错过了实例变量赋值 self.var = xxx,而是写了 var = xxx。

虽然在 ARC 版本中它没有造成任何问题 - 在非 ARC 版本中它肯定会导致崩溃。

这是否意味着在 ARC 中分配实例变量而不使用 self 实际上是可以的。所以他们会被保留?

谢谢!

ps 学习如何在 ARC 中编程的最佳来源是什么,这样可以避免明显的错误 - 到目前为止我根本没有发现任何问题,但我很担心我可能错过了一些东西

最佳答案

Does that mean that it is actually OK to assign instance vars in ARC without the self. so they get retained?

是的,有点。

id obj_;

和这个一样。

id __strong obj_;

obj_ 对分配的对象具有强引用。在 ivar 的所有者对象被释放之前,分配的对象不会被释放。

请引用LLVM document或仍处于 NDA 状态的 Apple ARC 引用。

关于iphone - 不同的内存管理ARC/无ARC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7367254/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com