Foros - Stratos

Programadores => General Programadores => Mensaje iniciado por: DraKKaR en 04 de Enero de 2004, 02:24:04 PM

Título: Dlls Y Miembros Estã¡ticos De Clase En C++
Publicado por: DraKKaR en 04 de Enero de 2004, 02:24:04 PM
 Ahí va otra de mis dudas existenciales.

Tengo una DLL con una clase:


class __declspec(dllexport) Memolo
{
public:
       static std::string kk;
};

std::string Memolo::kk="si que me molo";


Ahora importo en otro módulo la clase con:

class __declspec(dllimport) Memolo
{
public:
       static std::string kk;
};


El problema es que en el módulo donde importo la clase definida en la DLL, la variable estática pierde su contenido! He leido que es porque como son variables estáticas, cada módulo (DLL y el módulo principal) reservan su hashtable para las variables estáticas y por eso dentro de la DLL si que tiene el valor que toca, pero fuera (en el módulo principal) se pierde.

¿Sabeis como hacer para exportarlo correctamente?
Título: Dlls Y Miembros Estã¡ticos De Clase En C++
Publicado por: DraKKaR en 04 de Enero de 2004, 03:29:38 PM
 Vale, olvidadlo, ha sido fallo mio. El código anterior debe funcionar. Me habia olvidado un dllimport XD.

Porca miseria.
Título: Dlls Y Miembros Estã¡ticos De Clase En C++
Publicado por: Mars Attacks en 04 de Enero de 2004, 07:26:54 PM
 ¿Qué demonios le pasa a tu codificación de caracteres? ¿O es que escribes medio en élfico?
Título: Dlls Y Miembros Estã¡ticos De Clase En C++
Publicado por: DraKKaR en 04 de Enero de 2004, 07:30:22 PM
 Pues pasa que he usado el Mozilla Firebird desde windows para escribirlo. El IExplorer ya me estaba tocando las pelotas mucho.