报错: extra qualification 'HelloWorld::' on member 'getJsonFromFile' [-fpermissive]

来源:互联网 发布:成都氪星网络 编辑:程序博客网 时间:2024/06/11 11:26

报错: extra qualification 'HelloWorld::' on member 'getJsonFromFile' [-fpermissive]

我尝试将VS的项目移植到安卓esclipse,但是报错:

jni/../../Classes/HelloWorldScene.h:20:16: error: extra qualification 'HelloWorld::' on member 'getJsonFromFile' [-fpermissive]
jni/../../Classes/HelloWorldScene.h:21:14: error: extra qualification 'HelloWorld::' on member 'getFullPath' [-fpermissive]

解决方法:网上查找了一下关于原来这个是说getJsonFromFile函数在HelloWorldScene.h文件中声明时,多写了“HelloWorld::”,

getFullPath函数在HelloWorldScene.h文件中声明时,也多写了“HelloWorld::”。

我看了一下自己的代码,天哪,真是犯傻了!

居然在在HelloWorldScene.h中,写了:

CSJson::Value HelloWorld::getJsonFromFile(const char* fileName);
std::string HelloWorld::getFullPath(const char* path);

把多写的HelloWorld::删除即可。即改为:

CSJson::Value getJsonFromFile(const char* fileName);
std::string getFullPath(const char* path);

一不小心多写了,哈,没想到VS让通过,而GCC报错,下次得小心点!


报错:Classes/HelloWorldScene.cpp:119: error: undefined reference to 'LoginScene::scene()'

 解决方法:这个报错提醒的是,因为未修改项目proj.android\jni目录下的Android.mk文件。导致LoginScene等其他cpp文件未加进安卓项目。


报错:

Description ResourcePathLocationType
Syntax error on token ".01", delete this token BuildConfig.java /te1/gen/te/te/01line 2Java Problem

Description ResourcePathLocationType
The declared package "te.te" does not match the expected package "te.te.01"te1.java/te1/src/te/te/01line 24Java Problem

解决方法:package名字有错,te.te.01;不能用数字开头,把.01改为字母开头,可以新建cocos2d-x项目,把class和资源复制到新项目中。


0 0