получить значение атрибута класса, хранящегося в NSMutableArray - PullRequest
0 голосов
/ 04 декабря 2011

Я перевожу код на C, чтобы понять отличия объективного C от C. Я хочу перевести эту инструкцию.

new_fitness += abs(int(population[i].str[j] - target[j]));

new_fitnees - это целочисленная переменная.Target - это строка, а популяция - , которая содержит строковый атрибут с именем str.

. Я пытался использовать эту последовательность:

new_fitness += abs( [[population objectAtIndex:i] cadena characterAtIndex:j] - [target characterAtIndex:j] );

Я получаюсообщение об ошибке, сообщающее: отсутствует в первом characterAtIndex.

new_fitnees - это NSInteger var.Target - это NSString, а совокупность - это NSMutableArray , который содержит строковый атрибут с именем cadena.

Наконец, в Objetive-C лучше разбить операцию C на 3 или 4 маленькихоперации?Я думаю, что последовательность, которую я получил в Obj-C, слишком сложна для чтения.

1 Ответ

1 голос
/ 04 декабря 2011

wtf является "кадена" удалить его. Также вам понадобится intValue для объектов

NSInteger new_fitness = 0;
NSString *target = @"test";
NSMutableArray *population = [NSArray arrayWithObject:@"cadena"];

new_fitness += abs( [[population objectAtIndex:0] characterAtIndex:1] -[target characterAtIndex:1]);

только что протестировано - не вижу ошибок

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