Я бы не стал использовать #define
, поскольку вы теряете какие-либо проверки от компилятора. Обычно вы используете константу, чтобы избежать использования магических значений в коде, которые могут быть написаны неправильно или напечатаны неправильно.
В документации Apple для Рекомендации по кодированию они рассказывают, как вам следует подходить к каждому типу константы.
Для простых целых чисел, которые у вас есть, они предлагают enums
- лучший вариант. Они широко используются в платформах Apple, поэтому вы знаете, что они хороши.
Вам все равно нужно определить его в заголовке.
например. (Используйте собственный префикс вместо PS
)
typedef enum {
PSGameStateRunning = 1,
PSGameStateGameOver,
PSGameStateMenu,
} PSGameState;
Это также имеет то преимущество, что является типом, который вы можете передавать / возвращать из функций, если вам требуется