Wenns doch immer so wäre...
Habe ein neues Problem, was mit diesem etwas in Verbindung steht. Deswegen will ich auch nicht wieder ein neues Thema eröffnen...
Die Objekte, die ich dynamisch anlegen möchte sollen in einer Datei gespeichert werden. Hierzu habe ich eine Klassendatei, in der alle anzulegenden Objekte stehen. (genauer die Pfade der Objektdateien) Beim Ausführen wird diese Datei geöffnet und alle darin enthaltenen Dateien nach und nach ebenfalls um deren Inhalt dem Konstruktor zu übergeben. (Fragt nach falls was unklar ist)
// Ort aus Datei \/
vector<Ort*> arrOrt;
vector<Ort> tempOrt;
vector<string> buffer;
int count = 0;
string spei;
char str[255];
ifstream ort("Ort.en");
if (!ort)
{
cout << "File kann nicht geoeffnet werden.\n";
return 1;
}
else
{
cout << "GEHT!";
while (ort)
{
ort.getline(str, 255); //HIER
ifstream tort(str); //TODO
if (!tort)
{
cout << "File 2 kann nicht geoeffnet werden.\n";
}
else
{
while (tort)
{
getline(tort, spei);
buffer.push_back(spei);
}
tempOrt.push_back(Ort(buffer.at(0), buffer.at(1), buffer.at(2), buffer.at(3), buffer.at(4)));
arrOrt.push_back(&tempOrt.at(count));
cout << "Buffer0: " << buffer.at(0) << "\nBuffer1: " << buffer.at(1) << "\nBuffer2: " << buffer.at(2) << "\nBuffer3: " << buffer.at(3) << "\nBuffer4: " << buffer.at(4) << endl;
buffer.clear();
cout << tempOrt.at(0).getName() << "HAAAALLLOOO\n";
cout << tempOrt.at(count).getName() << "HAAALOOO\n";
count = count + 1;
}
}
}
// Ort aus Datei /\
[/PHP]
sobald ich mir nun jedoch arrOrt->at(whatever)->getName() in einer Methode anzeigen lassen möchte, bekomme ich eine Sonderzeichenausgabe und die Fehlermeldung "..hat einen Fehler verursacht un musste beendet werden.."
Die Methode funktionierte mit statisch angelegten Orten ohne Probleme, also vermute ich den Fehler irgendwo hier...
Könntet ihr mir vielleicht nochmal weiterhelfen?
Vielen Dank schonmal im Vorraus