cocos ui命名空间问题
身心进化中 2014-07-25 03:44:28 在使用一些ui里面的成员的时候,需要添加的它的头文件,才可以使用不会报错。
没错,我们都是这样干的!
今天我在用Button(归属于ui里),添加头文件#include "cocos/ui/CocosGUI.h",并使用了using namespace ui; 这样操作使用。
编译开始,报错:
1>e:\cocos2d-x-project\runningpanda3\classes\layer\welcomelayer.cpp(4): error C2871: “ui”: 具有该名称的命名空间不存在
1>e:\cocos2d-x-project\runningpanda3\classes\layer\welcomelayer.cpp(39): error C2065: “Button”: 未声明的标识符
1>e:\cocos2d-x-project\runningpanda3\classes\layer\welcomelayer.cpp(39): error C2065: “btnStart”: 未声明的标识符
1>e:\cocos2d-x-project\runningpanda3\classes\layer\welcomelayer.cpp(39): error C2059: 语法错误:“)”
1>e:\cocos2d-x-project\runningpanda3\classes\layer\welcomelayer.cpp(40): error C2065: “Button”: 未声明的标识符
1>e:\cocos2d-x-project\runningpanda3\classes\layer\welcomelayer.cpp(40): error C2065: “btnOption”: 未声明的标识符
1>e:\cocos2d-x-project\runningpanda3\classes\layer\welcomelayer.cpp(40): error C2059: 语法错误:“)”
1>e:\cocos2d-x-project\runningpanda3\classes\layer\welcomelayer.cpp(41): error C2065: “Button”: 未声明的标识符
1>e:\cocos2d-x-project\runningpanda3\classes\layer\welcomelayer.cpp(41): error C2065: “btnRank”: 未声明的标识符
1>e:\cocos2d-x-project\runningpanda3\classes\layer\welcomelayer.cpp(41): error C2059: 语法错误:“)”
1>e:\cocos2d-x-project\runningpanda3\classes\layer\welcomelayer.cpp(42): error C2065: “Button”: 未声明的标识符
1>e:\cocos2d-x-project\runningpanda3\classes\layer\welcomelayer.cpp(42): error C2065: “btnHelp”: 未声明的标识符
1>e:\cocos2d-x-project\runningpanda3\classes\layer\welcomelayer.cpp(42): error C2059: 语法错误:“)”
1>e:\cocos2d-x-project\runningpanda3\classes\layer\welcomelayer.cpp(43): error C2065: “Button”: 未声明的标识符
1>e:\cocos2d-x-project\runningpanda3\classes\layer\welcomelayer.cpp(43): error C2065: “btnStore”: 未声明的标识符
1>e:\cocos2d-x-project\runningpanda3\classes\layer\welcomelayer.cpp(43): error C2059: 语法错误:“)”
1>e:\cocos2d-x-project\runningpanda3\classes\layer\welcomelayer.cpp(45): error C2065: “btnStart”: 未声明的标识符
等等报错。我很好奇,头文件和命名空间都添加正确。却报这种错误,经过反复的修改头文件命名空间位置顺序。我发现:使用如下位置;
using namespace ui;
using namespace cocos2d;
using namespace cocostudio;
就会报错。具体点:ui 后面如果使用了cocos2d就会报错。
相反,如果在cocos2d后面来使用命名空间ui就不会报错。编译通过。
求大神给个回答。Why?