Установите для нескольких переменных одинаковое значение - PullRequest
1 голос
/ 09 сентября 2010

У меня есть десятки NSStrimgs, которые, когда приложение загружается, я хочу, чтобы все были установлены на тот же набор.Все они.Как я могу сделать это, не печатая каждый?Есть ли способ ярлыка?

Спасибо.

Ответы [ 4 ]

3 голосов
/ 09 сентября 2010

Кроме того, проблема в том, что Джош недостаточно конкретен о том, как он использует свои десятки строк ... Я думаю, что это будет лучше:

NSMutableArray *stringsArray = [NSMutableArray arrayWithCapacity:1]; 
NSString *tempStr = @"My unique string";  // Thanks Sven!

// Say you want a dozen strings 
for (int i = 0; i < 12; i ++) {

    [stringsArray addObject:tempStr];
}

// Now you can use them by accessing the array
[self doSomethingWithString:[stringsArray objectAtIndex:8]];
1 голос
/ 10 сентября 2010

Звучит так, будто ваша модель совсем не очень хороша. Поскольку вы хотите инициализировать все ваши строки одним и тем же значением, они, очевидно, связаны и, вероятно, должны быть смоделированы как массив, как описано в iPhoneDevProf. Это также облегчает выполнение других задач, вы можете переместить другой код, который повторяется для каждой строки, в цикл.

1 голос
/ 09 сентября 2010

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

0 голосов
/ 10 сентября 2010

Если значение известно, когда вы компилируете код, и оно не изменится после последующих сеансов приложения, тогда вы можете использовать простое определение #.следующее.

{
    NSString *myString1 = MY_DEFAULT_STRING;
    NSString *myString2 = MY_DEFAULT_STRING;
    ....
    NSString *myStringN = MY_DEFAULT_STRING;
}

Если все строки находятся в одном и том же кодовом файле, просто поместите определение вверху.Если строки находятся в отдельных кодовых файлах, то они могут быть помещены в предварительно скомпилированный заголовок.Наличие файла констант обычно лучше.

Использование константы extern NSString, вероятно, было бы более правильным, но это просто и легко сделать.

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