经过几年的Objective-C,我才开始学习C ++和Cocos2d-x。今晚的障碍似乎是学习如何将CCArray功能用作全班变量。
class HelloWorld : public cocos2d::CCLayer
{
public:
// Here's a difference. Method 'init' in cocos2d-x returns bool, instead of returning 'id' in cocos2d-iphone
virtual bool init();
// there's no 'id' in cpp, so we recommand to return the exactly class pointer
static cocos2d::CCScene* scene();
// a selector callback
void menuCloseCallback(CCObject* pSender);
// implement the "static node()" method manually
CREATE_FUNC(HelloWorld);
// static Array of tiles
static cocos2d::CCArray* uniquetiles;
};
uniquetiles=CCArray::create();
uniquetiles->addObject(d00);
当我尝试运行代码时,我收到错误提示“未定义引用'Helloworld :: uniquetiles'
我在这里做错了什么?看起来这应该是直截了当的。
答案 0 :(得分:3)
您应该在类定义中添加此变量。
private:
CCArray* uniquetiles;
答案 1 :(得分:0)
您正在使用静态CCArray
,因此您需要在CPP文件中重新声明它:
cocos2d::CCArray* HelloWorld::uniquetiles;