cocos2dx体系结构i386的未定义符号:错误

时间:2014-03-16 17:01:11

标签: cocos2d-x

刚才我在我的mac上创建了一个cocos2d-x项目,Iam使用ios版本项目进行开发。我是cocos2dx和cpp的新手。当我第一次在Xcode中运行项目时,它运行良好。但是当我在HelloWorldScene.h文件中添加touches方法时,它显示错误,因为我运行项目。我添加的是在我添加命名空间cocos2d之后和静态方法CREATE_FUNC(HelloWorld)之后;我添加了触摸事件方法,

virtual void ccTouchesEnded(CCSet* pTouches, CCEvent* event);

当我构建并运行项目时出现错误,错误是。

Undefined symbols for architecture i386:
  "HelloWorld::ccTouchesEnded(cocos2d::CCSet*, cocos2d::CCEvent*)", referenced from:
      vtable for HelloWorld in HelloWorldScene.o
  "non-virtual thunk to HelloWorld::ccTouchesEnded(cocos2d::CCSet*, cocos2d::CCEvent*)", referenced from:
      vtable for HelloWorld in HelloWorldScene.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)

1 个答案:

答案 0 :(得分:0)

对于虚函数,在.h文件中,定义为:

virtual void ccTouchesEnded(CCSet* pTouches, CCEvent* event);

然后在.cpp文件中,不需要'虚拟':

void HelloWorld::ccTouchesEnded(CCSet* pTouches, CCEvent* event){ ... }; 

我猜问题就在这里。