Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno Pomozte s programem v C++...

Po tom ako odstrániš študenta zo zoznamu, nemôžeš ďalej zvyšovať iterátor, takže tam musíš dať break. Debugger by ti mal ukázať presne, kedy to spadne.

void SeznamStudentu::odeberStudenta(int id) {
  list<Student*>::iterator i;

  for (i = studenti.begin(); i != studenti.end(); ++i)
    if ((*i)->getId() == id) {
      studenti.erase(i);
      break;
    }
}

Reakce na odpověď

1 Zadajte svou přezdívku:
2 Napište svou odpověď:
3 Pokud chcete dostat ban, zadejte libovolný text:

Zpět do poradny