目标 c 访问释放的对象

穆巴什维尔·阿拉姆

如果下面的代码执行会发生什么?

NSData* data =  [myArray objectAtIndex:i] // assigning from array
[myArray removeAllObjects]; // removing all objects from array.
[self doSomething:data]; // this method will execute some operations with data

数据是否变成了可能导致 EXC_BAD_ACCESS 崩溃的僵尸对象?

程序员

不,它不会导致崩溃。data只是一个指针,保存着存储 NSData 数据的相同数字(虚拟)内存地址。如果将其中一个指针设置为指向 nil 或与此相关的某些其他数据,则不会触发 NSData 或其他指针的任何更改。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章