相关疑难解决方法(0)

NSArray对ARC下的对象的弱引用(__unsafe_unretained)

我需要在NSArray中存储对象的弱引用,以防止保留周期.我不确定使用正确的语法.这是正确的方法吗?

Foo* foo1 = [[Foo alloc] init];
Foo* foo2 = [[Foo alloc] init];

__unsafe_unretained Foo* weakFoo1 = foo1;
__unsafe_unretained Foo* weakFoo2 = foo2;

NSArray* someArray = [NSArray arrayWithObjects:weakFoo1, weakFoo2, nil];
Run Code Online (Sandbox Code Playgroud)

请注意,我需要支持iOS 4.x,__unsafe_unretained而不是__weak.


编辑(2015-02-18):

对于那些想要使用真__weak指针(不是__unsafe_unretained)的人,请查看这个问题:在ARC下归零弱引用

objective-c ios4 ios5 automatic-ref-counting

68
推荐指数
5
解决办法
4万
查看次数

委派给多个对象

有没有办法在Objective-C中一次委托两个对象?我知道委托模式一次意味着一个响应,并且对于多个听众和广播有通知中心但通知不会返回任何值.

如果我有一个基于网络的大量iOS项目并且需要委托给多个侦听器并且需要从它们返回值,那么在这种情况下哪种方法应该是最好的?

objective-c

28
推荐指数
2
解决办法
2万
查看次数

标签 统计

objective-c ×2

automatic-ref-counting ×1

ios4 ×1

ios5 ×1