如何在ARC模式下释放可播放的实例变量

时间:2013-02-14 05:26:43

标签: iphone objective-c

我在我的h文件中创建了多个insance

IBOutlet UIImageView *imageView;
IBOutlet UIImageView *subImageView;
IBOutlet UIImageView *arrowRight;
IBOutlet UIImageView *arrowLeft;
IBOutlet UIImageView *arrowDown;

我的项目处于ARC模式

我必须在dealloc()方法中将它们设置为nil才能释放它们吗?

由于

3 个答案:

答案 0 :(得分:0)

如果在取消分配其中一个对象后不需要全局实例,最好的方法是在nil中将全局指针设置为dealloc

- (void)dealloc {
    gYourGlobalPointer = nil;
}

请注意,在ARC中,您无法调用[super dealloc],dealloc将自动发送到您的超类。

答案 1 :(得分:0)

你可以在viewDidUnload中将它们设为零,如下所示:

- (void)viewDidUnload
{
    [super viewDidUnload];
    // Release any retained subviews of the main view.
    self.myOutlet = nil;
}

答案 2 :(得分:0)

在ARC中,你不必担心发布一个真正属性的实例。编译器会为您处理它们。

如果要手动释放,则必须为指向特定实例的所有强变量指定nil。