我是iPhone的新编程.我写了一个小应用程序.应用程序的一部分在模拟器中正常运行.我不明白以下几点:
分析仪不同意该代码."方法返回一个具有+1保留计数的Objective-C对象(拥有引用)"他说.
有人帮助我吗
谢谢...
- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName
{
if ([elementName isEqualToString:@"item"]) {
[item setObject:currentTitle forKey:@"name"];
[item setObject:currentAutor forKey:@"descr"];
[item setObject:currentContact forKey:@"contact"];
[rssArray addObject:[item copy]];
NSLog(@"Nachricht: %@", currentTitle);
[item release];
}
[rssArray release];
}
Run Code Online (Sandbox Code Playgroud)
Nic*_*sky 11
[rssArray addObject:[item copy]];
此行产生内存泄漏,因为rssArray将retain发送到[item copy],而[item copy]创建新对象,object [item copy]将具有retainCount = 2,但只会释放一次.您应该使用[[item copy] autorelease],或将[item copy]指定给临时变量,并在将其添加到数组后将其释放.
| 归档时间: |
|
| 查看次数: |
216 次 |
| 最近记录: |