ClassA *obj1 = [[ClassA alloc] init];
ClassA *obj2 = obj1;
[obj1 hello]; //输出hello
[obj1 dealloc];
[obj2 hello]; //能够执行这一行和下一行吗?
[obj2 dealloc];
不能,因为obj1和obj2都是指针,而且它们又指向同一个对象,[obj1 dealloc]已经销毁这个对象了,而下面的代码将会再调用([obj2 hello]和[obj2 dealloc]不再调用)。obj2已经是个无效的指针了。 |