Return 来自块的对象以匹配 NS_RETURNS_RETAINED 行为

Return an object from a Block to match NS_RETURNS_RETAINED behavior

我正在使用块来调整具有 NS_RETURNS_RETAINED 行为的方法。我的程序崩溃了,大概是因为 ARC 正在自动释放 return 值。我可以将 NS_RETURNS_RETAINED 属性添加到我的区块吗?

如有必要,您可以人为地增加 return 值的保留计数:

^id () {
    void * retained = (__bridge_retained void *)myObject;
    return (__bridge id)retained;
};