我的应用没有崩溃。
DDXMLDocument *d = [[DDXMLDocument alloc] initWithData:abookConnData options:0 error:nil];
books = [d nodesForXPath:@"abooks/abook" error:nil];
我将DDXMLDocument的对象更改为autorelease,我的应用程序开始崩溃。但是为什么?
DDXMLDocument *d = [[[DDXMLDocument alloc] initWithData:abookConnData options:0 error:nil] autorelease];
books = [d nodesForXPath:@"abooks/abook" error:nil];
我的应用程序在DDXMLNode中崩溃了。 [DDXMLNode XMLStringWithOptions:]
答案 0 :(得分:1)
您没有提供足够的代码来确定,但这几乎肯定是在您使用它之前发布DDXMLDOcument *(d)的情况。
尝试打开Zombie检测,并在Exception上设置断点。通常,这可以引导您找到问题所在的确切代码行。
调试的另一个技巧是创建DDXMLDocument的子类并覆盖ALLOC和RELEASE以调用NSLog()事件(然后[super alloc]
或[super release]
!),这样你就可以看到发生了什么。