gpt4 book ai didi

objective-c - 应该有一个非空的返回值来指示是否发生错误

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:20:10 25 4
gpt4 key购买 nike

大家好,下面是我遇到内存泄漏的代码。我对处理内存泄漏真的很陌生,所以即使它是一个简单的错误,也请善待我。

-(void) parseActivityData:(NSMutableData*) data parseError:(NSError **)error
{
NSXMLParser* parser = [[NSXMLParser alloc] initWithData:data];

[parser setDelegate:self];
[parser setShouldProcessNamespaces:NO];
[parser setShouldReportNamespacePrefixes:NO];
[parser setShouldResolveExternalEntities:NO];

[parser parse];
NSError *parseError = [parser parserError];
if (parseError && error) {
*error = parseError;
}
[*error retain];

[parser release];
}

对于这段代码,我遇到了这个内存泄漏问题,一个是“接受 NSError 的方法应该有一个非空返回值来指示是否发生错误”,另一个是空指针的 DeDereference(从变量加载 '错误')。谢谢

最佳答案

只做要求的事。当您实际使用错误参数时,返回一个 BOOL 而不是设置为 NO 的 void。也不要 [*error retain];

关于objective-c - 应该有一个非空的返回值来指示是否发生错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9063817/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com