7.e.Q
13-11-2006, 14:01
Hi Leute,
wie kommt es, daß mein Programm bei STL Aufrufen immer mal wieder abstürzt? Zumeist bekomm ich die Abstürze irgendwie weg. Aber dann stoße ich wieder auf einen mysteriösen Absturz. Wie jetzt wieder. Dieses Mal stürzt mein Programm beim Aufruf von
std::map<std::string, std::string> mMap;
.
.
.
if( mMap.empty() || mMap.find("test") != mMap.end() || mMap["test"] != "blubb" )
{
mMap["test"] = "blubb";
}
... in der if-Abfrage ab. Laut gdb in mMap.empty() (stl_map.h:287). Angeblich ist this in innerhalb der Funktion empty() = 0xCC; Finde ich merkwürdig, da es sich nicht um eine mit new angelegte, über Zeiger referenzierte Map handelt, sondern um ein direkt über std::map<x,y> angelegtes Map-Objekt. Das sollte doch eigentlich vollständig initialisiert sein, oder?
Versteh ich nicht... was mach ich falsch, daß ich immer wieder auf solche Probleme stoße?
Danke
Grüße,
Hendrik
wie kommt es, daß mein Programm bei STL Aufrufen immer mal wieder abstürzt? Zumeist bekomm ich die Abstürze irgendwie weg. Aber dann stoße ich wieder auf einen mysteriösen Absturz. Wie jetzt wieder. Dieses Mal stürzt mein Programm beim Aufruf von
std::map<std::string, std::string> mMap;
.
.
.
if( mMap.empty() || mMap.find("test") != mMap.end() || mMap["test"] != "blubb" )
{
mMap["test"] = "blubb";
}
... in der if-Abfrage ab. Laut gdb in mMap.empty() (stl_map.h:287). Angeblich ist this in innerhalb der Funktion empty() = 0xCC; Finde ich merkwürdig, da es sich nicht um eine mit new angelegte, über Zeiger referenzierte Map handelt, sondern um ein direkt über std::map<x,y> angelegtes Map-Objekt. Das sollte doch eigentlich vollständig initialisiert sein, oder?
Versteh ich nicht... was mach ich falsch, daß ich immer wieder auf solche Probleme stoße?
Danke
Grüße,
Hendrik