Правильный способ объявить NSArray (Memory-Wise) - PullRequest
0 голосов
/ 21 мая 2011

У меня есть NSArray, который имеет неатомарные свойства и сохраняет.Что я хотел бы знать, так это то, что я правильно инициализирую его так, чтобы количество сохраняемых записей было таким, каким оно должно быть?

_lengthArr - это @synthesized ivar of lengthArr в my.h

@synthesize lengthArr = _lengthArr;

_lengthArr = [[NSArray arrayWithObjects:@"10 Minutes", @"20 Minutes", @"30 Minutes", @"1 Hour", @"2 Hours", @"5 Hours", @"5 Hours +", nil] retain];

1 Ответ

0 голосов
/ 21 мая 2011

Вы назначаете там ивару, поэтому код, который вы разместили, будет делать то, что вы хотите. Вы также можете использовать _lengthArr = [[NSArray alloc] initWithObjects:...], чтобы избежать бесполезного автоматического выпуска.

Или вы можете сделать self.lengthArr = [NSArray arrayWithObjects:...], чтобы установщик автоматически сохранил его, хотя рекомендуется избегать этого в методах инициализации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...