如果我将一个对象(例如视图控制器)设置为 nil,它的按钮和标签等属性是否也会在 ARC 下释放?如果属性是 strong 和 assign 类型会发生什么?另外,当不使用 ARC 时,在我的 delloc 方法中,我是否只释放保留类型属性?
问问题
1299 次
1 回答
1
您应该阅读这份Apple 内存管理文档。
基本上,这取决于。除非其他实例保留它,否则视图控制器将被释放。然后,当它被释放时,它的属性将被释放 - 除非其他一些实例保留它们。
如果您将这些属性引用的对象传递给另一个实例,或者(如果属性是某种UIView
)您将它们添加为子视图(然后您添加它们的视图将保留它们),则其他实例可能会保留这些引用。
重要的是,如果您是所有者,您可以释放参考,如果您需要某些东西,您可以通过,保留它并在完成后释放它。
于 2013-05-16T07:54:08.107 回答