Cómo inicializar un miembro estático

Quiero inicializar dos miembros de datos estáticos. Ver los dos archivos

// Logger.h   

class Logger
{
    public:
        static LoggerConcrete error;
        static LoggerConcrete write;
};

y

//Logger.cpp

Logger::error = LoggerConcrete(LOG_DEBUG);
Logger::write = LoggerConcrete(LOG_DEBUG);

La iniciación de los dos miembros estáticos en Logger.cpp no ​​funciona. Recibo el siguiente error del compilador (g ++):

g ++ -O0 -g3 -Wall -c -fmessage-length = 0 -MMD -MP -MF "Logger.d" -MT "Logger.d" -o "Logger.o" "../Logger.cpp" .. /Logger.cpp:13: error: constructor esperado, destructor o conversión de tipo antes de '=' token ../Logger.cpp:14: error: constructor esperado, destructor o conversión de tipo antes de '=' token

Quiero usar Logger :: write y Logger :: error en cada clase en la que incluyo Logger.h. ¿Cómo tengo que inicializar estos dos miembros?

Respuestas a la pregunta(2)

Su respuesta a la pregunta