【发布时间】:2011-01-11 21:48:56
【问题描述】:
我认为这段代码应该没问题,但静态分析器不喜欢它。我不知道为什么,希望有人能帮助我理解。代码工作正常,分析器结果让我很困惑。
Coin *tempCoin = [[Coin alloc] initalize];
self.myCoin = tempCoin;
[tempCoin release];
Coin 是一个通用的NSObject,它有一个 initalize 方法。 myCoin 是当前视图的属性,类型为Coin。我假设它告诉我我正在泄漏tempCoin。
在我看来,.h 我已将 myCoin 设置为具有 nonatomic,retain 的属性。
我已尝试自动发布代码以及此正常版本,但静态分析器继续说:
1. 方法返回一个具有 +1 保留计数的 Objective-C 对象(拥有引用)
2. 在第 97 行分配的对象在此之后不再被引用,并且保留计数为 +1(对象泄漏)
第 97 行是我显示的第一行。
【问题讨论】:
标签: iphone memory-leaks clang-static-analyzer