4

我有这个对象包含对其他对象的引用:

1)视图
2)视图控制器
3)字典
4)数组
5)自定义对象。

摧毁它的最好方法是什么?我是否需要创建一个销毁方法来处理其不同属性的破坏?
在这些类型中的每一种中是否有特殊的事情要做,或者我只是将它们全部设置为零?
注意:我正在使用 ARC。

谢谢,
尼姆罗德

4

2 回答 2

7

这取决于您是否使用自动引用计数 (ARC)

如果没有 ARC,您必须重写 dealloc 方法并释放您拥有的对象。

使用 ARC,您只需将主要对象设置为nil. ARC 将负责释放对象和它拥有的所有其他对象。

于 2013-01-24T18:27:15.843 回答
1

当您使用 ARC 时,您不需要为释放对象而费心,除非有一些保留周期。

您可以将 nil 发送到您的对象,因为yourObject=nil;这将使其为 nil 并将在稍后发布。

于 2013-01-24T18:28:54.470 回答