Código:
y cuando en el .cpp declaro la funcionclass gestorTexturas { public: static GLuint getTexturaObjIndex(std::string nombre); static void cargaTextura(std::string nombre, std::string ruta); private: typedef std::map<std::string, GLuint> parejaTexturaNumero; static parejaTexturaNumero _listaTexturasIds; };
Código:
Cuando accedo a _listaTexturasIds desde dentro , me dice que GLuint gestorTexturas::getTexturaObjIndex(std::string nombre) { parejaTexturaNumero::iterator it = _listaTexturasIds.find(nombre); if (it != _listaTexturasIds.end()) return (it->second); else return 0; }
Undefined Reference to gestorTexturas::_listaTexturasIds
Y parece que no funciona... creo que me estoy saltando algo de la teoría de clases estáticas y miembros estáticos. Por tener un miembro dentro de la clase tengo que hacer que deje de ser estática???. No lo necesito, solamente quiero tener una lista global en esta clase pero no la encuentra. Ni siquiera me ayuda el ide. Solo me saca los miembros locales si hago
gestorTexturas::_listaTexturasIds .... si lo pongo normal, no sabe lo que es.
Tendré que hacer una clase no estática y un patrón de programación para que solo haya una instancia de esta clase?
Gracias