我有两个仪器工具显示的泄漏。我在谷歌上环顾四周,但我还没有看到我的问题。
问题#1:
self.wallText = [[text stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]] stringByTrimmingCharactersInSet:[NSCharacterSet newlineCharacterSet]];
我已尝试过上述各种配置,但都漏了。我需要做两个修剪操作。 'text'用@“”或stringWithFormat声明。
我的另一个问题是以下一行:
NSString * value = [elements objectAtIndex:i+1];
if ([value length] >= 2 && [[value substringToIndex:2] isEqualToString:@"S_"]){
value = [value substringFromIndex:2]; // LEAK HERE
}
我需要获取除前两个字符之外的所有字符串,所以我不知道如何首先释放它或者某些东西......如果这确实是我应该做的。
在之前的项目之前,我可以通过泄漏逃脱,但这个内存密集,我需要所有的内存!
任何指针都会非常感激
答案 0 :(得分:3)
您是否为wallText声明了@property (retain)
,是否在dealloc方法中执行了[wallText release]
?
仔细检查上面的内容,你就不会再有泄漏了
更新部分:
你有一个内存泄漏真的很奇怪。因为首先,您的value
指向一个autoreleased
对象,然后它指向另一个autoreleased
对象,我觉得这很好。
答案 1 :(得分:0)
你有没有使用alloc值。 value = [value substringFromIndex:2];
。现在值正在引用新的自动释放字符串。所以你不能释放以前的对象。