Tom*_*m W 12 iphone objective-c ipad ios automatic-ref-counting
我正在编写一个对委托对象进行回调的类,但是我遇到了ARC的问题.
例如,我有ObjectA(委托),它符合ProtocolA,而ObjectB是回调委托的对象.我在ObjectB中将ObjectA存储为@property.
在这种情况下,哪些变量应该很强,哪些应该是弱引用?我需要避免将"自我"从ObjectA传递到ObjectB以设置委托导致从强指针到弱指针的转换的情况.
小智 22
要避免循环引用,请将ObjectB的委托保存为弱引用.因为ObjectA"拥有"ObjectB,所以不应该释放ObjectA,而ObjectB具有对它的引用.所以写:
@property (weak, nonatomic) id <ObjectBDelegate> delegate;
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
6646 次 |
最近记录: |