[C con Clase] static std::map
juan
jmicanovelles en gmail.com
Sab Jun 14 01:05:47 CEST 2008
Lo habia intentado ya de esta manera, pero cometeria algun error porque ahora si me lo compila y se ejecuta correctamente.
Despues le he añadido una función para borrar las entradas del contenedor, a ver, es un edit para modificar los subitems de un listview, yo lo borro del map aquí:
case WM_KILLFOCUS:
DestroyWindow(hEditable);
break;
case WM_DESTROY
SetWindowLong(hEditable, GWL_WNDPROC, (LONG)wpOld);
//En principio lo puse aquí pero me fallaba el programa
//supongo poque tendría basura el HWND hEditable
hEditable = NULL;
DeleteFromMap(hEditable);
break;
Es el procedimiento del edit, supongo que será correcto.
Gracias Steve.
Juan
El pasado 2008-06-12 20:09:06, Steven Davidson escribió:
SD> Hola Juan,
SD> Juan wrote:
SD> > static std::map<HWND,CListView*>m_EditMap;
SD> > en una clase
SD> > ¿Como inicializarla?
SD> > Error al linkar:
SD> > [Linker Error] undefined reference to `CListView::m_EditMap'
SD> Tienes que definir el objeto fuera de la clase; típicamente, se hace
SD> globalmente. Por ejemplo,
SD> class CListView
SD> {
SD> static std::map< HWND, CListView * > m_EditMap;
SD> ...
SD> };
SD> std::map< HWND, CListView * > CListView::m_EditMap;
SD> Espero que esto te sirva.
SD> Steven
SD> _______________________________________________
SD> Lista de correo Cconclase Cconclase en listas.conclase.net
SD> http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net
SD> Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ
Más información sobre la lista de distribución Cconclase