0

我在 Objective-C 程序中有一个 NSArray 的 Foos。我想调用每个 Foo 的 doIt 函数,但是,根据文档, NSArray 的 makeObjectsPerformSelector 函数不允许修改原始 Foos 。doIt 选择器在调用 doIt 时更改每个 Foo 的 m 数据成员。如何在 NSArray 中的每个 Foo 上有效地执行此功能?

@interface Foo : NSObject {
    NSString *m;
}

@property (nonatomic, retain) NSString *m;

-(void)doIt;

@end
4

1 回答 1

6

您可以修改原始Foos,而不是数组本身。正如您在文档中链接的那样:

该方法不能带任何参数,并且不能有修改接收数组的副作用。

祝你好运!

于 2009-10-28T16:34:50.193 回答