Форум программистов, компьютерный форум CyberForum.ru

Objective-C

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 18, средняя оценка - 4.89
LLAlive
0 / 0 / 0
Регистрация: 11.01.2012
Сообщений: 7
#1

Добавление элемента в массив - Objective-C

11.01.2012, 13:31. Просмотров 2217. Ответов 7
Метки нет (Все метки)

Упёрся в стену на простом вроде бы моменте. Объекты в массив просто не добавляются. Вот что я сделал:
Объявил массив в интерфейсе :
Objective-C
1
2
3
NSMutableArray *categories;
...
@property (readonly,retain) NSMutableArray *categories;
Далее в реализации объявил его:
Objective-C
1
@synthesize categories;
После этого в теле метода пытаюсь заполнить его значением:
Objective-C
1
2
3
NSString *newCategory = [NSString alloc];
newCategory = currentNews.category;
[categories addObject:newCategory];
Значение currentNews.category имеется (проверено). В конце проверяю количество элементов в массиве:
Objective-C
1
NSLog(@"Categories count now is %d.",[categories count]);
Получаю нули. Буду благодарен, если обнаружите косяки в приведенном коде и укажите их.
К документации и мануалам просьба не отсылать - сжатые сроки не позволяют штудировать очередной курс, по очередному языку.

Спасибо.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.01.2012, 13:31     Добавление элемента в массив
Посмотрите здесь:

Выделение элемента Objective-C
Как объявить символьный массив и числовой массив? Objective-C
Objective-C Добавление информации в .plist
Objective-C Добавление кода отправки GET запроса в AppDelegate.m
AVAudioPlayerNode добавление эффектов из файла Objective-C
Objective-C Добавление строк в UITextView

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Splitter
201 / 143 / 5
Регистрация: 13.01.2009
Сообщений: 554
11.01.2012, 13:46     Добавление элемента в массив #2
а как проинитили массив? Если какой-нибудь быстрой конструкцией типа [NSMutableArray arrayWith... то он просто получился авторелизным и релизится где-нибудь сразу после добавления элемента...
LLAlive
0 / 0 / 0
Регистрация: 11.01.2012
Сообщений: 7
11.01.2012, 13:51  [ТС]     Добавление элемента в массив #3
Совсем крыша едет с этим новым языком). Добавил строчку
Objective-C
1
categories = [[NSMutableArray alloc] init];
Всё вроде путем. Есть новые эксепшены - но буду разбираться).
Спасибо.
Splitter
201 / 143 / 5
Регистрация: 13.01.2009
Сообщений: 554
11.01.2012, 14:19     Добавление элемента в массив #4
ну и хорошо, пишите если что
fomistoklus
3 / 3 / 0
Регистрация: 12.05.2011
Сообщений: 31
25.02.2012, 14:25     Добавление элемента в массив #5
Помните, если вы заинитили, то несёте ответственность за релиз этого объекта. Поэтому не забудте добавить:
C
1
[categories release];
zulkis
681 / 608 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
26.02.2012, 07:23     Добавление элемента в массив #6
Цитата Сообщение от LLAlive Посмотреть сообщение
NSString *newCategory = [NSString alloc];
Ай, ай, нельзя так.
C++
1
... alloc] init(With bla bla bla)];
Taker
0 / 0 / 0
Регистрация: 14.03.2012
Сообщений: 4
14.03.2012, 02:45     Добавление элемента в массив #7
В таких случаях нужно быть очень осторожным и обращать внимание на время жизни объектов
zulkis
681 / 608 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
14.03.2012, 05:28     Добавление элемента в массив #8
Цитата Сообщение от Taker Посмотреть сообщение
В таких случаях нужно быть очень осторожным и обращать внимание на время жизни объектов
Всмысле? Это банальный memory management. Где там нужно быть "очень осторожным"?
Yandex
Объявления
14.03.2012, 05:28     Добавление элемента в массив
Ответ Создать тему
Опции темы

Текущее время: 03:12. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru