我在一个目标C项目中有一系列的FOO。我想调用每个foo的doit函数,但是nsarray的makeObjectsPerformSelector函数不允许修改原始foo,根据 the docs .当调用doit时,doit选择器更改每个foo的m数据成员。如何有效地对NSARRAY中的每个FOO执行此功能?
@interface Foo : NSObject { NSString *m; } @property (nonatomic, retain) NSString *m; -(void)doIt; @end
允许您修改原始文件 Foo S,但不是数组本身。正如您在文档中链接到的:
Foo
方法不能接受任何参数,也不能有修改接收数组的副作用。
祝你好运!