我有将间接指针作为参数的方法,然后,如果错误,将其设置为错误对象。我试图尽可能多地打开警告。但其中一个 - Implicit ownership types on out parameters
- 会在此方法中生成警告:
- (id)doWithError:(NSError **)error {
...
}
如何修复代码以删除警告?
答案 0 :(得分:10)
您可以通过将方法声明为
来修复该警告- (id)doWithError:(NSError * __autoreleasing *)error {
// ...
}
隐含地假设__autoreleasing
所有权限定符用于" out-parameters"
(参见" 4.4.2间接参数"在Clang/ARC documentation中),
因此明确添加它不会改变代码。