0

Xcode 在 YES 之前期待一个 ')'

[_creep scheduleOnce:@selector(removeFromParentAndCleanup:YES) delay:2.0f];

对不起,如果它看起来很基本......我刚开始使用ObjectiveC。

4

1 回答 1

2

因为 Cocos API 将您限制为一个带有 1 个参数 (ccTime) 的选择器,所以请编写您自己的方法,将给定的参数传递给正确的函数:

-(void)doneWithSomething {
    [self scheduleOnce:@selector(removeAndCleanup:) delay:2.0f];
}

-(void)removeAndCleanup:(ccTime)delta {
    [ _creep removeFromParentAndCleanup:YES];
}

您不能在@selector()指令中传递参数,因为它直接与 vTable(用于常用方法)中的条目或 ObjC sel 缓存中的条目相关,因此编译器认为您正在尝试调用一个名为-removeFromParentAndCleanup:YES

于 2013-03-08T17:15:11.563 回答