ARC已关闭,分析器显示拒绝类方法

时间:2012-11-15 19:05:40

标签: iphone ios6

+ (Photo *)photoWithImage:(UIImage *)image {
return [[Photo alloc] initWithImage:image] ;// Potential leak of an object

}

Method返回一个带有+1保留计数的Objective-C对象 对象作为拥有引用返回给调用者(传递给调用者的单个保留计数) 对象泄漏:已从名称(photoWithImage)不以copy,mutableCopy,alloc或new

开头的方法返回已分配的对象
+ (Photo *)photoWithFilePath:(NSString *)path {
return [[Photo alloc] initWithFilePath:path];
}// potential leak of an object

Method返回一个带有+1保留计数的Objective-C对象 对象作为拥有引用返回给调用者(传递给调用者的单个保留计数) 对象泄露:已从名称(photoWithFilePath)不以copy,mutableCopy,alloc或new

开头的方法返回已分配的对象

如果不想使用自动释放,是否有其他方法可以修复它。

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

您收到此错误是因为您没有遵守约定。您必须调整以遵循惯例。由于您不想自动释放返回的对象,因此您可以将这些方法重命名为以新的(newPhotoWithImagenewPhotoWithPath)开头。

您没有说明为什么您不想返回自动释放的对象。也许如果你详细说明这些原因,我们可以提出更好的解决方案。

相关问题