我尝试在我的方法中将对象添加到我的NSMutable数组,但不断收到错误。如果我在init中添加对象,它可以工作。在我尝试执行代码之前,并没有说任何错误。
这是在我声明两个数组的#import内容之下:
NSMutableArray *actions1, *actions2;
这是在init:
actions1 = [NSMutableArray array];
这里我尝试将1添加到数组中:
- (void) storeAction:(int) action {
[actions1 addObject:@"1"];
}
正如我之前所说,相同的代码在int中工作。
我也希望它存储声明为“action”的int值,但这似乎也不起作用。
[addObject:@"%d", action];
答案 0 :(得分:5)
[NSMutableArray array];
正在返回一个autoreleased对象,当您尝试访问它时,它很可能已经被释放。请尝试使用[[NSMutableArray alloc] init];
。而且你应该紧急检查memory management rules。
答案 1 :(得分:2)
试试这段代码
actions1 = [[NSMutableArray alloc] init];
希望这有帮助。
答案 2 :(得分:0)
或者,在头文件中:
@property(nonatomic, strong)NSMutableArray *actions1;
然后在植入文件中:
@synthesize actions1 = _actions1;
然后您可以self.actions1
访问您的数组。