Hi,
ich hab ein Problem mit Pointern anscheinend. Ich fands eigentlich ganz simpel aber irgendwie passiert nix oO
Hmm.. erstma 'nen paar Zeilen code:
Code:
SSharedData shareddata;
[...]
shareddata.username = stringw("hallo");
shareddata.password = stringw("du");
[...]
CMainMenu mm (¶ms,&(shareddata.username),&(shareddata.password));
mm.run();
Es geht um shareddata.username und shareddata.password beide vom Typ irr::core::stringw.
im CMainMenu-Konstruktor werden die Zeiger einfach nur in privaten membern gespeichert:
Code:
class CMainMenu : public IEventReceiver
{
private:
[...]
stringw* user;
stringw* password;
public:
CMainMenu(SIrrlichtCreationParameters* pa, stringw* u, stringw* p);
[...]
void run();
};
Code:
user = u;
password = p;
So, wenn dann das richtige Event ausgelöst wird wird folgender Code ausgeführt:
Code:
case GUI_ID_LOGIN:
*user = lwndUserEdit->getText();
*password = lwndPWEdit->getText();
// device->closeDevice();
return true;
break;
und dann soll das ganze erstmal testweise in eine Datei geschrieben werden:
Zitat:
std::wfstream log;
log.open("connectionhandler.log", std::ios_base::out);
log << "u:" << sd->username.c_str() << std::endl << "pw:" << sd->password.c_str() << std::endl;
log.close();
und wenn ich dann den Dateiinhalt betrachte, merke ich das irgendwas schief läuft:
Code:
u:hallo
pw:du
Ich seh einfach den Fehler nicht.
Ich hoffe ihr könnt helfen

mfg
rotten_corpse