Форум программистов, компьютерный форум, киберфорум
Наши страницы

Objective-C

Войти
Регистрация
Восстановить пароль
 
too young
1 / 1 / 0
Регистрация: 26.07.2011
Сообщений: 8
#1

Проблемы со свойством - Objective-C

05.10.2011, 02:11. Просмотров 932. Ответов 2
Метки нет (Все метки)

Если инициализировать свойство класса, созданное с использованием
Objective-C
1
@property (nonatomic, retain) NSArray *prop
в теле функции (void)init следующим способом:
Objective-C
1
prop = [NSArray arrayWithObjects:@"1", @"2", nil]
то где в коде будет ошибка, какие последствия в работе программы она будет иметь и в какой момент (в какой фунции) это может случиться?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.10.2011, 02:11
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Проблемы со свойством (Objective-C):

Проблемы с свойством RecordCount элемента Data (VB 6.0) - Visual Basic
Используется Access'овская база. Data1.Recordset.RecordCount в начале выполнения программы выдаёт 1, а через некоторое времени, даже если...

Проблемы с инетом, не отправляется почта, проблемы со связью с другой организацией - Сети
Здравствуйте. Есть проблемка. Такая ситуация - Организация. Компьютеры подключены по локалке. Находятся в домене. Интернет есть, но! не...

Работа со свойством Tag - C++ Builder
Есть Image1, Image2...Image10 у них Tag соответсвенно 1,2...10 Так вот, для всех Image нужно обработать функцию MouseMove Я создаю...

Подпрограмма с заданным свойством - Assembler
Здравствуйте! Имеется такая задача: Написать подпрограмму для вычисления арифметической суммы элементов с заданным свойством в некотором...

Компонент со свойством множество - Delphi
Создать простейший компонент с единственным свойством множество.

Работа со свойством listindex - Visual Basic
Проблема такая : начал я изучать visual basic по одной книжке ! Задание написать программу сочинитель с использованием раскрывающихся...

2
Splitter
202 / 144 / 5
Регистрация: 13.01.2009
Сообщений: 554
05.10.2011, 13:15 #2
а почему Вы думаете что будет ошибка?
0
XuTPbIu_MuHTAu
Эксперт С++
2227 / 742 / 10
Регистрация: 27.05.2008
Сообщений: 1,498
19.10.2011, 12:16 #3
Вместо
Objective-C
1
prop = [NSArray arrayWithObjects:@"1", @"2", nil]
нужно
Objective-C
1
self.prop = [NSArray arrayWithObjects:@"1", @"2", nil]
Поскольку в первом случае сеттер не будет вызван( если проперти привязана к переменной prop в интерфейсе) Это значит, что ретейна не будет и после дрейна текущего авторелиз пула память из под этого объекта будет помечена свободной и очень быстро будет перезаписана. Чаще всего можно будет увидеть ошибку "объект не распознает селектор", тк вместо массива там будет записано что-то другое.

Впрочем, до дрейна авторелиз пула падения проги при обращении к массиву не будет.

Можно провести забавный эксперимент:
Objective-C
1
2
3
4
5
6
7
8
9
10
- (id) init { 
if( (self = [super init]) ) {
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
prop = [NSArray arrayWithObjects:@"1", @"2", nil];
[pool drain];
NSArray* notRelatedArray = [NSArray arrayWithObjects:@"3", @"4", nil];
NSLog(@"%@", [prop objectAtIndex:0]);
}
return self;
}
И посмотреть на лог. Потом заменить prop = на self.prop = и посмотреть разницу.Ее,конечно, может и не быть, но на моей системе была
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.10.2011, 12:16
Привет! Вот еще темы с ответами:

проблема со свойством clear - HTML, CSS
Здраствуйте. Мне нужно, что бы квадраты меню лежали на фоновом рисунке. Пишу такой html <style type="text/css"> #cont {...

MaskEdit с свойством времени - Delphi
Добрий вечер. Есть одна проблема...Есть два поля MaskEdit со свойством Time...хочу выводить разницу между этими значениями, то есть ,...

Работа со свойством Checked - Delphi
Здравствуйте. У меня следующая проблема. Я добавил в программу поддержку скинов. Все работает, все нормально, но... мне надо чтобы...

проблема со свойством float - HTML, CSS
Такой вопрос друзья: у меня две колонки правая и левая со значениями float: right и left когда я создаю контентную часть то она игнорит у...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.