cpSpaceAddCollisionHandler编译器警告问题

发布于 2024-10-18 09:38:26 字数 602 浏览 2 评论 0原文

我的程序中有以下内容(似乎工作正常),但会导致编译器警告:

从不兼容的指针类型传递 cpSpaceAddCollisionHandler 的参数 7。

cpSpaceAddCollisionHandler(space, COLLISION_TYPE_BALL, COLLISION_TYPE_LEFT_WALL, collisionBallWallBegin, nil, nil, collisionBallWallEnd, self);

collisionBallWallBegin 不会导致此警告,并且这两种方法声明相同:

static int collisionBallWallBegin (cpArbiter *arb, cpSpace *space, void *data) 

static int collisionBallWallEnd(cpArbiter *arb, cpSpace *space, void *data) 

不明白为什么我会收到警告,这让我发疯!

I have the following in my program (which seems to be working perfectly), but causes a compiler warning:

Passing argument 7 of cpSpaceAddCollisionHandler from incompatible pointer type.

cpSpaceAddCollisionHandler(space, COLLISION_TYPE_BALL, COLLISION_TYPE_LEFT_WALL, collisionBallWallBegin, nil, nil, collisionBallWallEnd, self);

collisionBallWallBegin does not cause this warning and the two methods are declared the same:

static int collisionBallWallBegin (cpArbiter *arb, cpSpace *space, void *data) 

and

static int collisionBallWallEnd(cpArbiter *arb, cpSpace *space, void *data) 

I can't figure out why I am getting the warning and it is driving me nuts!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

烟燃烟灭 2024-10-25 09:38:26

begin 需要是一个 cpCollisionBeginFunc,它接受三个参数并返回一个 cpBool

相比之下,separate 需要是 cpCollisionSeparateFunc,它接受三个参数并且不返回值

begin needs to be a cpCollisionBeginFunc, which takes three arguments and returns a cpBool.

In comparison, separate needs to be a cpCollisionSeparateFunc, which takes three arguments and does not return a value.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文