在某些代码中,我有时会看到:

@property (nonatomic, assign) NSObject *foo;

...

-(void)dealloc
{
   self.foo = nil;
   ...
}

当一个对象没有被保留时,它真的有必要归零吗?这实际上不会引起问题吗?

最佳答案

将您不再感兴趣的任何指针设置为 nil 是一种很好的做法。我不提倡在 -dealloc 中使用这样的访问器,因为可能存在访问器副作用(如发布通知或 KVO),但这是一个有争议的立场,Apple 在自己的代码中并不一致。在任何情况下,将指针归零是一种很好的做法。它当然不会引起问题,并且在 -dealloc 中清空指针的习惯将在 future 为您节省重大错误。

在这种特定情况下,可能没有必要,但是您建议出现什么样的问题?

关于objective-c - 是否有必要将分配的变量归零?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1162742/

10-13 02:35