Я думаю, что это почти повторяющийся вопрос.Ваша проблема не имеет ничего общего с инициализацией NSMutableArray
, а больше связана с тем, как вы ведете управление памятью в Objective-C для подклассов NSObject
в целом.
См. Связанный пост на NSString
s здесь .Посмотрите на верхний ответ.
Если вы хотите, чтобы массив длился в течение всего времени жизни класса, попробуйте:self.nsmutablearray = [[NSMutableArray alloc] init];
Просто убедитесь, что вы выпустили его в методе dealloc
:[self.nsmutablearray release];
В качестве альтернативы вы можете @synthesize
nsmutablearray, но вам все равно придется обрабатывать его освобождение.Существует множество способов решения этой проблемы.