Как правильно иметь статические члены класса?
Я пытаюсь создать класс метрик, чтобы я мог включить «metrics.h» во все мои файлы и использовать определенные переменные из него (статические), чтобы отслеживать информацию о синхронизации между несколькими отдельно скомпилированными библиотеками.
Одна из этих библиотек является общей для всех остальных, поэтому, когда я компилирую ее с помощью metrics.h, она компилируется нормально, но когда я пытаюсь скомпилировать одну из дополнительных библиотек, использующих общие, я получаю ошибки «множественного определения», а также некоторые неопределенные ссылки.
Как должен выглядеть этот общий класс метрик? Я не хочу создавать его экземпляр для пользовательских переменных, я просто хочу использовать что-то вроде
Metrics :: startTime = ....
и Metrics :: calcTime = ....
в общей библиотеке или в одной из других библиотек, которые ссылаются на общую