¿Por qué la creación de una const estática std :: string puede causar una excepción?

Tengo constantes de cadena, para cadenas que uso en varios lugares en mi aplicación:

namespace Common{
    static const std::string mystring = "IamAwesum";
}

Al publicar una pregunta sobre otra cosa (¿Qué le sucede a un archivo .h que no está incluido en un destino durante la compilación?), otro usuario hizo el siguiente comentario:

Tenga en cuenta que su cadena estática es global en este caso. Por lo tanto, podrían crear una excepción en cualquier momento y no se pueden atrapar. Le aconsejo que use la función que devuelve una referencia de su cadena. std :: string const & mystring {static std :: string const mystring = "IamAwesum"; return mystring} de esta manera su objeto solo se construye cuando es necesario

¿Alguien puede explicar por qué el uso de cadenas constantes estáticas de la manera en que lo hago anteriormente, corre el riesgo de lanzar excepciones?

Respuestas a la pregunta(3)

Su respuesta a la pregunta