为什么在释放实例时将委托设置为 nil?
Why set delegate nil when the instance is dealloced?
我用失礼来检查我的代码,它说
When an object sets itself as the delegate or data source of one of
its members, it must detach that reference in its -[NSObject dealloc]
method.
所以我需要写
- (void)dealloc
{
self.tipsView.delegate = nil;
}
为什么?如果委托很弱,我找不到在释放时将其设置为 nil 的必要性。
这样做的唯一原因是您不使用 ARC。我认为该工具是旧的或未配置为知道您正在使用 ARC。
如果你的委托是弱引用,你是对的,将它设置为 nil 是没有意义的。工具错误。
我用失礼来检查我的代码,它说
When an object sets itself as the delegate or data source of one of its members, it must detach that reference in its -[NSObject dealloc] method.
所以我需要写
- (void)dealloc
{
self.tipsView.delegate = nil;
}
为什么?如果委托很弱,我找不到在释放时将其设置为 nil 的必要性。
这样做的唯一原因是您不使用 ARC。我认为该工具是旧的或未配置为知道您正在使用 ARC。
如果你的委托是弱引用,你是对的,将它设置为 nil 是没有意义的。工具错误。