ObjC:将逻辑置于一个变量中,并将该变量排入一个数组......做白日梦?

Jem*_*Jem -1 queue function objective-c

我正在尝试将以下JS代码翻译成ObjC; 它基本上定义了一个函数并将其存储在一个数组中以便以后执行:

var logic = function() {
    me.removeNode(node);
}
this.queue.push(logic);
Run Code Online (Sandbox Code Playgroud)

我的ObjC端口包含方法:-(void)removeNode:(AbstractNode*)node我被卡住了...我想使用指定的"node"参数对此方法进行排队调用...

编辑:我正在阅读选择器.它仍然很模糊,但可能有所帮助.不知何故.或不?

它甚至可能,还是我需要找到一个解决方法:-)?谢谢!

解决这个问题归功于社区:

// Queue declaration
NSMutableArray *IRQ = [[NSMutableArray array] retain];

// Add logic to the queue for delayed execution:
[IRQ addObject:^{ NSLog(@"thanks for the help!"); } ];

// Call later
for (int i = 0; i < [IRQ count]; i++){
     void (^delayedCall)(void) = [IRQ objectAtIndex:i];
     delayedCall();
}
Run Code Online (Sandbox Code Playgroud)

Joh*_*eek 5

使用块:

[queue addObject:^{
    [me removeNode:node];
}];
Run Code Online (Sandbox Code Playgroud)

这里是块的简短介绍.它们是匿名函数的Objective-C等价物.