我已通过工具运行我的程序,并在此代码中报告泄漏:
为什么?
答案 0 :(得分:1)
这部分代码没有泄露。尝试运行分析仪,它可能会显示泄漏的内容。
答案 1 :(得分:0)
正如我之前所说的,我在这里看不到泄漏,但是一些代码更改可能有助于消除可能的泄漏,因为您假设substringWithRange:
正在产生泄漏。
以下代码使用基于块的枚举。另一个积极的影响:它知道如何处理组成的非ascii字符。
NSMutableArray *characters = [NSMutableArray array];
NSString *answer = @"Hello, Wørld!";
[answer enumerateSubstringsInRange:NSMakeRange(0, [answer length])
options:NSStringEnumerationByComposedCharacterSequences
usingBlock:^(NSString *substring,
NSRange substringRange,
NSRange enclosingRange,
BOOL *stop)
{
[characters addObject:substring];
}
];
[characters enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) {
NSLog(@"%@", obj);
}];