Чи краще використовувати static const
vars, ніж #define
препроцесор? А може, це залежить від контексту?
Які переваги / недоліки у кожного методу?
#define
або static const
(для рядків), керується аспектом ініціалізації (це не було зазначено у відповідях нижче): якщо константа використовується лише в рамках певного блоку компіляції, тоді я переходжу static const
, інше використовую #define
- уникаю фіаско ініціалізації статичного порядку isocpp.org/wiki/faq/ctors#static-init-order
const
, constexpr
або enum
будь-яка варіація працює у вашому випадку, тоді віддайте перевагу цьому#define