cocos2dx相关,编译能过然后出了个奇怪的link问题

发布于 2022-08-29 16:41:43 字数 917 浏览 21 评论 0

默认的用cocos console新建的cocos2d-x 3.0新项目,对着书改代码的

我想实现一个键盘事件移动一个Sprite,在HelloWorld::init()方法里添加了下面的代码

    auto *dustinMovementListener = EventListenerKeyboard::create();
    dustinMovementListener>onKeyPressed=CC_CALLBACK_2(HelloWorld::dustinPressed, this);

理论上讲这样的代码应该是会回调HelloWorld::dustinPressed方法- -?

在类声明部分添加了

    void dustinPressed(cocos2d::EventKeyboard::KeyCode keyCode, cocos2d::Event *byevent);

这个方法声明

实现部分留空了

void dustinPressed(EventKeyboard::KeyCode keyCode, Event* event)
{

}

然后编译之后就出现了这样的错误
error

百思不得其解特向各位大牛求教······
补充:
按照kid143大神改了一下,编译的时候出了5个错误····
err2

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

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

发布评论

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

评论(1

睫毛溺水了 2022-09-05 16:41:43

我琢磨是你的实现那个写的不对。你那个声明是在HelloWorld类里的的吧?那就是这个类的成员函数了。但是你实现的时候没有将这个函数作为成员函数实现。应该写成:

void HelloWorld::dustinPressed(EventKeyboard::KeyCode keyCode, Event* event)
{

}

update:
你后来的编译错误是没有切换名空间。你是不是以前没写过C++?如果是这样的话还是先看看C++的基础吧。还有我不是大神,你不需要用“大神“这个称号称呼我。

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