【发布时间】:2011-08-18 19:01:30
【问题描述】:
我认为这会很简单地回答,我只是不知道如何摆脱这些警告。
当我执行此方法调用时,'DebugZoneLayer' 可能无法响应'-getGID:tileKind' 并且 初始化从没有强制转换的指针生成整数:
int blocksCollidableGID = [debugZoneLayer getGID:[NSValue valueWithCGPoint:(NSString*)tileCoord] tileKind:@"blocksCollidable"];
我尝试了转换这些类型值的所有不同组合。
在 DebugZoneLayer.h 我有:
-(int) getGID:(CGPoint)tileCoord withTileKind:(NSString*)tileKind;
谢谢
【问题讨论】:
-
你真的#import'ed DebugZoneLayer.h 吗?此外,第一个参数是
CGPoint类型,但你做错了:你传递了一个指向NSValue的指针,而在对valueWithCGPoint:的调用中,它需要一个CGPoint,你正在向指向NSString的指针?双重哎哟。 -
NSValue 是一个 ObjC 对象,而 CGPoint 是一个结构体。
-
是的,我已经导入了 DebugZoneLayer.h。我以为我在做的事情很糟糕,是的。
-
所以.. 我还没有在这里找到答案。有人吗?
标签: objective-c pointers methods casting warnings