内存管理 - 更早发现错误

时间:2012-01-06 15:16:11

标签: objective-c memory-management

我花了很多时间调试一个愚蠢的错误,(发布一个我没有分配的变量),并想知道是否有办法让XCode的Analyze下次警告我。代码是这样的:

@synthesize alfa, beta;
…
NSString *temp1 = [[NSString alloc] initWithString:@"AlfaText];
self.alfa = temp1;
[temp1 release];

NSString *temp2 = @"BetaText";
self.beta = temp2;
[temp2 release]

最后一句话(显然是?)是一个错误。当你的[发布]太少时,分析似乎可以很好地报告,并且太多似乎只是可以分析。有什么东西可以打开,我错过了吗?

1 个答案:

答案 0 :(得分:4)

如果静态分析仪没有发现,请提交错误。它确实应该有。

如果您将项目转换为使用ARC,那么缺少写入保留/发布以及编译器执行的更好分析都会导致更少的内存管理错误。