Я заблудился в стране указателей, я верю. У меня есть это (синтаксис кода может быть немного не так, я не смотрю на машину с этим кодом ... но все соответствующие детали верны):
NSMutableArray *tmp = [[NSMutableArray alloc] init];
Я передаю это рутине в другом классе
- (BOOL)myRoutine: (NSMutableArray *)inArray
{
// Adds items to the array -- if I break at the end of this function, the inArray variable has a count of 10
}
Но когда код возвращается в вызывающую подпрограмму, [счетчик tmp] равен 0.
Я, должно быть, упускаю что-то очень простое, но в то же время очень фундаментальное, но для своей жизни я этого не вижу. Кто-нибудь может указать, что я делаю не так?
РЕДАКТИРОВАТЬ: www.stray-bits.com спросил, сохранил ли я ссылку на него, и я сказал: «Может быть ... мы попробовали это: NSMutableArray * tmp = [[[NSMutableArray alloc] init] сохранить]; не конечно, если ты это имеешь в виду, или я все сделал правильно.
РЕДАКТИРОВАТЬ2: Майк МакМастер и Энди - вы, ребята, вероятно, правы тогда. У меня нет кода здесь (он находится на компьютере коллеги, и они ушли на день), но чтобы заполнить массив значениями, мы что-то делали по аналогии с использованием объекта декодера (?).
Цель этой функции - открыть файл с iPhone, прочитать этот файл в массив (это массив объектов, которые мы сохранили при предыдущем запуске программы). У этой вещи "декодера" есть метод, который помещает данные в массив.
Чувак, я полностью убил это. Я очень надеюсь, что вы все можете следовать, и спасибо за совет. Мы рассмотрим это более внимательно.