NSMutableArray的addObject不工作
我已经在我的视图控制器.h文件中声明了NSMutableArray *categories
,并为它声明了一个属性。
在parser:foundCharacters:
我的.m文件中的NSXMLParser
委托的parser:foundCharacters:
方法,我有这样的代码:
-(void)parser:(NSXMLParser *) parser foundCharacters:(NSString *)string { if (elementFound) { element = string; [self.categories addObject:element]; } }
但是,当我在debugging模式下将鼠标hover在[self.categories addObject:element]
行上时,XCode告诉我这个大小是0x0,0个对象。 在我的XML文件中有3个元素,所以3个元素应该在数组中。
我错过了一些非常明显的东西,我不知道是什么。
“0x0”部分是内存地址。 具体来说,“nil”,这意味着你的可变数组在调用的时候不存在。 尝试在你的-init方法中创build它:
categories = [[NSMutableArray alloc] init];
不要忘记在你的-dealloc中释放它。
使用初始化一个空数组
categories = [NSMutableArray array];
数组类方法是autoreleased所以不需要释放。
@property (Strong, nonatomic) NSMutableArray * yourArray;
你必须使用Strong 。