我在我的遊戲的全局類中有一個叫做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