cocos2d-x 对象定义错误

#ifndef __MEDIATOR_H__
#define __MEDIATOR_H__

#include "cocos2d.h"
#include "Hero.h"
#include "Singleton.h"
#include "TileMap.h"          


class GameMediator : public Singleton<GameMediator> {
public:
    //void addHero(Hero *hero);
    void addTileMap(TileMap *tileMap);
    bool checkMoveable(cocos2d::CCPoint position);
    
private:

    Hero* hero;   //这个Hero对象硬是报错,注释掉就没错,不注释就报错

    TileMap *tileMap;
};
#endif // __MEDIATOR_H__


2>d:\Program Files\Microsoft Visual Studio 10.0\VC\include\xlocale(323): warning C4530: 使用了 C++ 异常处理程序,但未启用展开语义。请指定 /EHsc
2>d:\cocos2d_workspace\cocos2d\bombman\classes\GameMediator.h(17): error C2143: 语法错误 : 缺少“;”(在“*”的前面)
2>d:\cocos2d_workspace\cocos2d\bombman\classes\GameMediator.h(17): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
2>d:\cocos2d_workspace\cocos2d\bombman\classes\GameMediator.h(17): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int

这里的Hero明明就是一个对象。为什么老是编译不通过!!!!


搞了半天,原来是我另外一个文件出了错!悲剧~ 

不过C++的引入头问件,不是我原来理解的那样。

我现在的错误是,

#include "Hero.h" 中的Hero.h文件引用了 GameMediator.h文件

而GameMediator.h文件又引用了Hero.h 文件,导致了交叉错误。 导致了C++头文件相互包含的错误!

而我原来的HelloWorldScene.h文件中也有错误,所以,错误越来越多,就不知道哪里报错了 !


这里有一个问题。

我原来的错误是: GameMediator.h包含了Hero.h头文件, 而 Hero.h头文件又包含了GameMediator.h头文件。HelloWorldScene.h头文件又包含了Hero.h头文件,这样导致了HelloWorldScene.h文件中先引入了Hero.h头文件,通过Hero.h引入了GameMediator.h头文件。编译器就因为这点,无法分晓了其中的对象定义错误!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值