Hallo,
ich arbeite seid kurzem mit den STL Containern vector und map. Mein Problem liegt darin, das die Werte bei Entnahme aus dem map Conatiner völlig falsch sind. Um folgendes geht es konkret:
Es gibt eine Klasse A, welche unter anderem einen vector container enthält der structs mit 3 charpointern besitzt (einer davon ist ein Array). Objekte der Klasse A speichere ich nun in einer map des Typs <char*, Klasse A> in Klasse B. Versuche ich nun zB. ...
... sind die Werte völlig falsch. Häufig gehören die zurückgegebenen Zeichenketten zu anderen structs im vektor, manchmal sind es auch sinnlose ACSII-Zeichen. Ich nehme an die Zeiger verweisen auf einen falschen Speicherbereich.
Verwirrend ist, das die Werte korrekt sind sobald ich sie innerhalb von Methoden aus Klasse A abrufe. Sprich ...
... funktioniert innerhalb einer Funktion von Klasse A. Ich hab nun schon einiges probiert und bin inzwischen ziemlich ratlos
.
ich arbeite seid kurzem mit den STL Containern vector und map. Mein Problem liegt darin, das die Werte bei Entnahme aus dem map Conatiner völlig falsch sind. Um folgendes geht es konkret:
Es gibt eine Klasse A, welche unter anderem einen vector container enthält der structs mit 3 charpointern besitzt (einer davon ist ein Array). Objekte der Klasse A speichere ich nun in einer map des Typs <char*, Klasse A> in Klasse B. Versuche ich nun zB. ...
Code:
map[objektName].vektor.at(xyz).einerDerChars
... sind die Werte völlig falsch. Häufig gehören die zurückgegebenen Zeichenketten zu anderen structs im vektor, manchmal sind es auch sinnlose ACSII-Zeichen. Ich nehme an die Zeiger verweisen auf einen falschen Speicherbereich.
Verwirrend ist, das die Werte korrekt sind sobald ich sie innerhalb von Methoden aus Klasse A abrufe. Sprich ...
Code:
vektor.at(xyz).einerDerChars
... funktioniert innerhalb einer Funktion von Klasse A. Ich hab nun schon einiges probiert und bin inzwischen ziemlich ratlos
