ho una libreria statica con il seguente codice:Membro statico fallimento oggetto di inizializzazione
h di file: file di
class Foo
{
public:
Foo()
{
a = 4;
}
int a;
};
class Bar
{
public:
static const Foo foo;
};
cpp:
const Bar::foo = Foo();
mio problema è che Bar :: foo non viene inizializzato con a = 4 fino a qualche tempo dopo main(). Prima di allora a = 0. Sto cercando di accedere a Bar :: pippo da una DLL che si collega staticamente alla libreria sopra. E la mia applicazione si collega a quella DLL ma non accede direttamente a Bar :: pippo. Sto usando Visual Studio 2008.
Qualcuno sa cosa potrebbe succedere?
comportamento definito dall'implementazione di Microsoft per lo scenario descritto è che l'inizializzazione si sia verificata prima che venga effettuata la chiamata 'process attach' di DllMain(). –
@ Michael Burr: Oh Ok. Questa è una buona informazione. Grazie. – Chubsdad