我正在将一个基于Cocos2dx的游戏从iOS移植到Windows Phone 8.这里的问题是在我修改了API差异的所有错误之后,我得到了一堆语法错误,未声明的变量(尽管这些变量是声明)。这是我的示例代码: .h文件:
#ifndef __Bomb__
#define __Bomb__
#include "MoveableObject.h"
typedef enum BombType {
BombTypeElectrical,
BombTypeIce,
BombTypeChemical,
BombTypeSmall,
BombTypeBig
} BombType;
class Bomb : public MoveableObject {
public:
Bomb() {};
Bomb(const char* szName);
virtual ~Bomb() {};
void setType(int nType) { m_nType = nType; };
int getType() { return m_nType; };
bool isExploding() { return m_bExploding; };
int bombTypeForName(const char* szName);
void expode();
void activate();
void finishExploding();
protected:
bool m_bExploding;
int m_nType;
};
#endif
错误标记在这里:
Bomb::Bomb(const char* szName) : MoveableObject(szName), m_bExploding(false) {
m_nType = this->bombTypeForName(szName);
}
错误28错误C3861:'m_bExploding':找不到标识符 以前有人有这个问题吗?我怎么能像这样解决这些问题(共有420个错误)?任何帮助赞赏。 感谢。
答案 0 :(得分:0)
我认为错误是因为cocos2d-x和WP8端口的不同版本。 有更新版本的WP8端口可用: http://www.cocos2d-x.org/news/98
你可能正在使用旧版本0.13。有很多语法(函数签名)更改,因此错误。在给出的链接中尝试2.0版。它与cocos2d-x v2.1 具有相同的API