我在应用程序的多个位置使用单例模式,并且clang
在分析代码时遇到内存泄漏错误。
static MyClass *_sharedMyClass;
+ (MyClass *)sharedMyClass {
@synchronized(self) {
if (_sharedMyClass == nil)
[[self alloc] init];
}
return _sharedMyClass;
}
// clang error: Object allocated on line 5 is no longer referenced after this point and has a retain count of +1 (object leaked)
我将这些设置用于scan-build
:
scan-build -v -v -v -V -k xcodebuild
我相当确定单例中的代码很好 - 毕竟,它与 Stack Overflow 以及 Apple 文档中引用的代码相同 - 但我想整理内存泄漏警告,所以我的扫描 -构建返回成功。