我正在通过翻译我为 Android 游戏编写的一些 Java 代码,在 Objective-c 中迈出第一步(在很久很久之后)。似乎没有容器可以容纳一个对象,而无需id
先将其投射到?或者有吗?
具体来说,这是我正在尝试使用的代码:
NSMutableArray *touchedBodies = [[NSMutableArray alloc] init];
// some additional code
if(![touchedBodies containsObject:(id)body]) {
[touchedBodies addObject:(id)body];
}
该containsObject
行通过正常,但在touchedBodies addObject:(id)b
我收到“错误访问”错误。我要添加的主体是合法的 Box2D b2Body
。
当我尝试直接添加主体而不进行投射时:
[touchedBodies addObject:body];
编译器抱怨“无法使用 b2Body* 类型的左值初始化 id 类型的参数”
我错过了什么?