在越狱开发中,非arc模式下,使用makefile命令运行程序,导入了GDataXMLNode相关,但程序一直报arc的错误:
通过行号查找到:
- (void)dealloc {
if (xmlNode_ &&shouldFreeXMLNode_) {
xmlFreeNode(xmlNode_);
xmlNode_ = NULL;
}
[selfreleaseCachedValues];
}
- (void)dealloc {
if (xmlDoc_ !=NULL) {
// release the strings cache
//
// since it's a CF object, were anyone to use this in a GC environment,
// this would need to be released in a finalize method, too
if (xmlDoc_->_private !=NULL) {
CFRelease(xmlDoc_->_private);
}
xmlFreeDoc(xmlDoc_);
}
}
真得很神奇,为什么这两个函数会报错呢,GDataXML在非arc模式下也可以用得呀,搞了很久不明白,后来,找了个另外的第三方只支持非arc的,发现在他的dealloc函数最后加了
[super dealloc];我也根据他试了下,嘿嘿,竟然成功了~~~~