Estoy trabajando en un juego y tengo una pregunta interesante. Tengo algunos valores constantes para todo el juego que quiero implementar en un archivo. Ahora mismo tengo algo como esto:C++ mejor manera de definir constantes de varios archivos
constants.cpp
extern const int BEGINNING_HEALTH = 10;
extern const int BEGINNING_MANA = 5;
constants.hpp
extern const int BEGINNING_HEALTH;
extern const int BEGINNING_MANA;
Y entonces sólo los archivos # include "constants.hpp" Esto estaba trabajando muy bien, hasta Necesitaba usar una de las constantes como un parámetro de plantilla, porque las constantes vinculadas externamente no son parámetros de plantilla válidos. Entonces mi pregunta es, ¿cuál es la mejor manera de implementar estas constantes? Me temo que simplemente poniendo las constantes en un archivo de encabezado hará que se definan en cada unidad de traducción. Y no quiero usar macros
Gracias
sospecho que hay un error de copiar/pegar en el último BEGINNING_NAME [] uno. ¿Querías escribirlo como BEGINNING_NAME? –
estás en lo correcto, arreglado. Gracias. – Tom
Necesita "estática", de lo contrario no obtendrá un enlace interno o, más idealmente, el equivalente de un "#define" con los valores en línea. –