Ich habe eine Klasse für den Abschnitt einer Welt. Dieser Abschnitt soll
aus einer txt-Datei ausgelesen werden. Den Pfad zur Datei übergibt man der Methode "Create", die so aussieht:
|
C-/C++-Quelltext
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
bool Cell::Create(wchar_t* Path)
{
//Variablen
wchar_t FileCell[100];
//Datei öffnen
std::basic_ifstream<wchar_t> Input(Path);
//Prüfen ob die Datei geöffnet wurde
if (Input.is_open() == false)
return false;
//Datei lesen
Input.read(FileCell, 100 * sizeof(wchar_t));
//Datei schließen
Input.close();
//Text anzeigen
std::wcout << FileCell;
_getch();
}
|
Soweit so gut, alles wird korrekt abgezeigt bis man eine Taste drückt. Dieses Methode wird in der Main-Funktion aufgerufen, in der sonst nichts geschieht, außer ein weiteres _getch() nach dem Aufruf. Das Problem ist nun, dass dieses _getch() ignoriert wird, scheinbar stürzt das Programm einfach ab, man kann alles Mögliche nach dem Methodenaufruf hinzufügen, das Programm kommt nicht dorthin.
Wenn ich nun den ganzen Code aus der Methode direkt in die Main verlagere funktioniert alles, es stürzt nicht ab und ich kann noch aufrufen was ich will...
Dumm eben dass der Code schon in der Methode sein sollte... weiß vielleicht jemand woran das liegen könnte?