我在我的游戏的全局类中有一个叫做realMap的地图。它用于在地图中存储变量,只要realMap在范围内,游戏中的所有对象都可以访问它们。基本上像Gamemaker中的global.
。因此,地图中的所有内容都是在运行时存储的。C++映射值在运行时不会改变,我做错了什么?
这是地图初始化代码 std::map<const char*, Real> realMap;
(Real
是在宣布double
另一个文件。)
在我的播放器对象,在启动时,播放器 globalObject.realMap["playerDead"] = false;
所以我检查和它等于0.
但是当玩家死亡时,它应该将地图键设置为true
,但它不会。我没有检查所显示的消息,它的价值,它仍然是0。 下面是代码:
ObjGlobal->realMap["playerDead"] = true;
Real tempVal = ObjGlobal->realMap.at("playerDead");
agk::Message(agk::Str(int(tempVal)));
因此,正如我所说,AGK ::消息显示0
我在做什么错?我对地图仍然陌生,对于C++来说还是一个新的东西,所以如果这是一个愚蠢的错误,那么很抱歉。
在此先感谢
为什么使用'Real'('double ....')来存储布尔值???!? – Amit