Person *p = [[Person alloc] init];
/*
只要一个对象被释放了,我们就称这个对象为“僵尸对象”
当一个指针指向一个僵尸对象,我们就称这个指针为“野指针”
只要给一个野指针发送消息就会报错
*/
[p release]; // 1-1=0
/*
空指针 nil 0
为了避免给野指针发送消息会报错,一般情况下,当一个对象被释放后我们会将这个对象的指针设置为空指针。
因为在OC中给空指针发送消息是不会报错的
*/
p = nil;
野指针和空指针
最新推荐文章于 2025-06-13 14:53:14 发布