【发布时间】:2017-10-04 00:25:52
【问题描述】:
我正在使用一个块来调配具有NS_RETURNS_RETAINED 行为的方法。我的程序崩溃了,大概是因为 ARC 正在自动释放返回值。我可以将NS_RETURNS_RETAINED 属性添加到我的块中吗?
【问题讨论】:
标签: objective-c memory-management automatic-ref-counting objective-c-blocks
我正在使用一个块来调配具有NS_RETURNS_RETAINED 行为的方法。我的程序崩溃了,大概是因为 ARC 正在自动释放返回值。我可以将NS_RETURNS_RETAINED 属性添加到我的块中吗?
【问题讨论】:
标签: objective-c memory-management automatic-ref-counting objective-c-blocks
如有必要,您可以人为地增加返回值的保留计数:
^id () {
void * retained = (__bridge_retained void *)myObject;
return (__bridge id)retained;
};
【讨论】: