0
У меня есть настройка NSCopying, и я могу скопировать массив успешно.Array копирование и удаление
theArray = [[NSMutableArray alloc] initWithArray:results.availableData
copyItems:YES];
Когда я закончил с theArray и все его данные барахло я хотел бы получить еще одну новую копию данных из results.availableData массива.
Какой лучший и безопасный способ сделать это?
Если я
[theArray release];
theArray = [[NSMutableArray alloc] initWithArray:results.availableData
copyItems:YES];
Так релиз theArray затем Alloc и снова инициализировать его?
Большое спасибо -кода
NSMutableArray копирует и работает идеально. Я использую изменение и удаление объектов в массиве. Позже я хочу получить новую копию данных из results.availableData. Не понимаю, почему мне нужно снова назначить, если я не выпустил. Извините, если я не смог правильно сформулировать вопрос. Или вы пытаетесь сказать, как я сначала распределил, а init - неправильно? – 2010-11-08 13:38:54
@Code - что делает этот пример: (1) выделить временный массив, копируя элементы из 'results.availableData', (2) заменяйте содержимое' theArray' содержимым временного массива, (3) autorelease временный. Это альтернатива выпуску/перераспределению 'theArray', как вы это делали. –
Но разве это не должно быть NSMutableArray, потому что мне нужно будет удалить объекты из массива? Или я чего-то не хватает? По этой причине TheArray является NSMutableArray. – 2010-11-09 12:55:56