Ich habe einige Probleme mit meinem aktuellen Projekt. Ich habe eine Klasse von Jobs, die innerhalb vector
gespeichert werden. Wenn ich versuche, push_back
oder pop_back
Job mein Programm funktioniert gut (Ich kann nur so oft löschen, wie oft ich Auftrag hinzufügen). Aber wenn ich versuche, anzuzeigen, was in meinem vector
ist, bekomme ich Nachricht: Nichts anzuzeigen, vector
ist leer, albought I push_back
einige Jobs.Kein Wert in Vektor beim Versuch, anzuzeigen
void Job::generirateActivities(vector<Job> job_list) {
Smt s1("Default1", 1, 2, 3);
Smt s2("Default2", 2, 3, 4);
Date d1(1, 1, 2001);
Date d2(2, 2, 2002);
Job j1(&s1, &d1);
Job j2(&s2, &d2);
job_list.push_back(a1);
job_list.push_back(a2);
}
und für das Drucken Ich verwende:
void Job::printJobs(vector<Job> job_list) {
if (job_list.empty())
cout << "Nothing to display, vector is empty." << endl;
else {
for (unsigned int i = 0; i < job_list.size(); i++)
cout << i + 1 << ". " <<job_list[i].toString() << endl;
}
Was könnte falsch sein? Irgendwelche Vorschläge?
Danke.
'generirateActivities (Vektor Jobliste) {' - Sie * kopieren * den ursprünglichen Vektor, dann an die Kopie anhängen, nicht das Original. Verwenden Sie eine Referenz: 'vector & job_list'. Gleiches zum Drucken (obwohl es 'const' ist). –
BoBTFish
Nun, wenn ich hinzufügen & meine project.exe funktioniert nicht mehr ... – HC1122
@BoBTFish Warum nicht als Antwort posten? – CinCout