在尝试将我当前的代码迁移到 ARC 时,每当我将 NSString 作为 NSInvocation 参数传递时,都会出现错误。
例子:
NSInvocation inv = ...;
NSString *one = @"Hello World!";
[inv setArgument:&one atIndex:2];
当我使用 Edit 菜单中的 Refactor -> Convert to Objective-C ARC 选项时会发生错误。文本是“NSInvocation 的 setArgument 不能安全地与拥有 __unsafe_retained 以外的所有权的对象一起使用。”
我将如何解决这个问题?