Я могу представить себе следующие способы определения ее в заголовочном файле:
Код: Выделить всё
#define GLOBAL_CONST_VAR 0xFFКод: Выделить всё
int GLOBAL_CONST_VAR = 0xFF;- Некоторая функция, возвращающая значение (например, int get_GLOBAL_CONST_VAR())
Код: Выделить всё
enum { GLOBAL_CONST_VAR = 0xFF; }Код: Выделить всё
const int GLOBAL_CONST_VAR = 0xFF;- и в одном исходном файле const int GLOBAL_CONST_VAR = 0xFF;
Код: Выделить всё
extern const int GLOBAL_CONST_VAR;
Вариант (2) — определение экземпляра переменной в каждом объектном файле с помощью заголовочного файла
Вариант (3) — IMO в большинстве случаев перебивает
Вариант (4) — во многих случаях может быть не очень хорош, поскольку перечисление не имеет конкретного типа (C++0X добавит возможность определить тип)
Поэтому в большинстве случаев мне нужно выбирать между (5) и (6).
- Что вы предпочитаете (5) или (6)?
- Почему (5) подходит, а (2) нет?
Подробнее здесь: https://stackoverflow.com/questions/226 ... stant-in-c
Мобильная версия