(void)dealloc{
[_name release]; // 为什么不回报错?
// _name不是都已经被释放了?成为了僵尸对象了?
// 僵尸对象不能访问,为什么下面的话照常运行?
NSLog(@"%@ Book has been release", self.name);
[super dealloc];
}
P.S. 模拟器已经设置允许僵尸对象了
原因:如果在其类内部,可以通过成员变量名(地址)继续访问其成员属性,修改其值
参考: http://www.cnblogs.com/dashunzi/p/3732912.html
1
zhangchioulin OP 希望能帮到大家
|
2
loveuqian 2015-07-16 12:30:12 +08:00 via iPhone
这个方法是销毁前掉的还是销完后掉的?
|
3
zhangchioulin OP @loveuqian 这个对象的retain count为0时会被调用。
|
4
loveuqian 2015-07-16 14:14:12 +08:00 via iPhone
@zhangchioulin 这个MRC应该只有面试时才会问吧
|
5
zhangchioulin OP @loveuqian 真正的释放操作是在dealloc的[super dealloc]中完成的,最近在看这个,有疑问就问出来了
|