如果下面的代码执行会发生什么?
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] 删除。
我来说两句