來自當地大學夜間課程的C#背景,我開始使用C++開發自己的方式。有很多痛苦習慣語法。在編碼技術方面,我還很綠。如何在另一部分代碼中使用類的枚舉值?
從我的WinMain
函數,我想能夠訪問一個變量,它正在使用我在另一個類中聲明的枚舉。
(inside core.h)
class Core
{
public:
enum GAME_MODE
{
INIT,
MENUS,
GAMEPLAY
};
GAME_MODE gameMode;
Core();
~Core();
...OtherFunctions();
};
(inside main.cpp)
Core core;
int WINAPI WinMain(...)
{
... startup code here...
core.gameMode = Core.GAME_MODE.INIT;
...etc...
}
基本上我想設置的遊戲模式給Init
枚舉值或類似的東西從我的WinMain
功能。我想也能夠從其他領域閱讀它。
我的錯誤...
expected primary-expression before '.' token
如果我嘗試使用core.gameMode = Core::GAME_MODE.INIT;
,然後我得到了同樣的錯誤。
我並不關心最佳實踐,因爲我只是想了解在C++之間傳遞文件間變量的基本知識。一旦我使用了語法的靈活性,我將確保變量受到保護並整齊地隱藏起來。
如果我沒有記錯的話,C#允許我使用其他類的Enums,而我所要做的只是類似於Core.ENUMNAME.ENUMVALUE
。
我希望我想要做的是明確的:\因爲我不知道什麼是正確的術語。
甜的工作!感謝:) 現在我可以看到有很多關於枚舉需要具有不同的名稱,如果他們在同一命名空間 – ChiggenWingz 2010-12-22 06:40:57