Avatar ·

Inicialización de std::map<int, int> estático en C++: formas y ejemplos

¡Hola a todos! Soy nuevo en C++ y estoy tratando de entender los contenedores STL. Tengo una clase en la que necesito almacenar un mapeo estático de números (int -> int), por ejemplo, la correspondencia de códigos de error y sus identificadores de texto. Quiero que este map sea estático, es decir, único para todas las instancias de la clase. El problema es que no puedo entender cómo inicializar correctamente un std::map estático. Aquí hay un ejemplo de mi código: ```cpp #include class ErrorCodes { public: static std::map codeMap; // declaración }; // Intento de inicialización std::map ErrorCodes::codeMap = { {1, 100}, {2, 200}, {3, 300} }; ``` El compilador se queja de la inicialización con lista de inicialización (initializer list). Estoy usando C++11, pero aún así obtengo un error "incomplete type" o "could not convert". ¿Podrían indicarme cómo inicializar correctamente un std::map estático en C++? ¿Quizás hay varias formas? Agradecería ejemplos con explicaciones, ya que