Недавно я столкнулся с проблемой, описанной в Странные неопределенные символы статических констант внутри структуры / класса , и я пытаюсь привести свой код в соответствие, добавив определения в соответствующие файлы .cpp для всехмои статические члены класса const, а не только те, которые вызывали ошибки компоновщика.
В тех случаях, когда константа используется в нескольких единицах компиляции, я получаю несколько ошибок определения, даже если определение только в одномединиц компиляции.
Перемещение инициализаторов в определения предотвращает ошибки, но я бы не стал этого делать.
Для чего это стоит, пока я работаю в Visual Studio, этокод должен быть построен на нескольких платформах.