码迷,mamicode.com
首页 > 移动开发 > 详细

[iOS] 如何在 NSArray 中存放 weak 的引用

时间:2014-11-13 22:35:00      阅读:270      评论:0      收藏:0      [点我收藏+]

标签:style   http   io   color   ar   os   sp   on   问题   

遇到一个问题,把 self 加到静态变量的 NSArray 的时候,由于被 NSArray 持有,所以无法释放,因此不能调用 dealloc 方法,也就无法将自己从 array 中 remove 掉。


问题整理一下,就是如何在 NSArray 中存放 weak 的引用?


解决的方案是:在外面加上一层 NSValue。答案地址:


http://stackoverflow.com/questions/9336288/nsarray-of-weak-references-to-objects-under-arc


代码如下:


NSValue *value = [NSValue valueWithNonretainedObject:myObj];
[array addObject:value];

[iOS] 如何在 NSArray 中存放 weak 的引用

标签:style   http   io   color   ar   os   sp   on   问题   

原文地址:http://blog.csdn.net/pleasecallmewhy/article/details/41089001

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!