Использование NSArray makeObjectsPerformSelector для побочных эффектов - PullRequest
0 голосов
/ 28 октября 2009

У меня есть NSArray of Foos в программе Objective-C. Я хотел бы вызывать функцию doIt каждого Foo, однако функция makeObjectsPerformSelector NSArray не позволяет изменять исходные Foos для документов . Селектор doIt изменяет m член данных для каждого Foo при вызове doIt. Как мне эффективно выполнять эту функцию на каждом Foo в NSArray?

@interface Foo : NSObject {
    NSString *m;
}

@property (nonatomic, retain) NSString *m;

-(void)doIt;

@end

1 Ответ

6 голосов
/ 28 октября 2009

Вам разрешено изменять исходные Foo с, но не сам массив. Как вы указали в документации:

Метод не должен принимать никаких аргументов и не должен иметь побочного эффекта при изменении принимающего массива.

Удачи!

...