我有这行代码:
__weak NSBlockOperation *weakOperation = operation;
引起编译器错误的是:
__weak attribute cannot be specified on automatic variable.
我之所以这样做是因为我没有启用ARC(尚未准备好切换)。因此,从另一个StackOverFlow问题中,我被推荐使用:
__unsafe_unretained NSBlockOperation *weakOperation = operation;
这使得错误消失了,但是在我使用它的上下文中,它并没有起作用(如果感兴趣,请参见此问题:如何取消NSOperationQueue)。
所以我的问题是,在这种情况下我可以用什么来替换
__weak
关键字以摆脱这个警告?当我使用__weak
时,一切实际上都工作正常,但我担心它在未来的iOS版本中可能不再适用。