我正在开发一款游戏并且有一个有趣的问题。我有一些游戏范围的常量值,我想在一个文件中实现。现在我有这样的事情:
常量.cpp
extern const int BEGINNING_HEALTH = 10;
extern const int BEGINNING_MANA = 5;
常量.hpp
extern const int BEGINNING_HEALTH;
extern const int BEGINNING_MANA;
然后文件只是 #include "constants.hpp" 这很好用,直到我需要使用其中一个常量作为模板参数,因为外部链接的常量不是有效的模板参数。所以我的问题是,实现这些常量的最佳方法是什么?恐怕只是将常量放在头文件中会导致它们在每个翻译单元中定义。而且我不想使用宏。
谢谢