我开始使用 iOS5 并为我的项目启用了 ARC。我有一个类,在释放时我保存该对象的状态。
-(void)dealloc {
[self save];
[super dealloc];
}
但是,在ARC下,[super dealloc]
是不允许的吗?我认为如果您在这种情况下不调用超类的 dealloc 方法,这被认为是一个错误?
那么现在释放对象的合适方法是什么?
我开始使用 iOS5 并为我的项目启用了 ARC。我有一个类,在释放时我保存该对象的状态。
-(void)dealloc {
[self save];
[super dealloc];
}
但是,在ARC下,[super dealloc]
是不允许的吗?我认为如果您在这种情况下不调用超类的 dealloc 方法,这被认为是一个错误?
那么现在释放对象的合适方法是什么?
iOS 5 中的 ARC 处于 NDA 之下。也就是说,从 clang 官方网站上公开的信息来看,你只是不写[super dealloc]
. 这是由编译器自动生成的。参见规范的第7.1.2条。