Listeniterator nicht inkrementierbar

Ich habe ein altes Projekt, das mit Visual Studio 2003 erstellt wurde und ich habe es kürzlich mit vs2005 neu kompiliert. Während der Laufzeit erhalte ich jedoch den folgenden Fehler:

Listeniterator nicht inkrementierbar

Ich habe das Programm auf diese Funktion zurückgeführt:

void InputQueue::update()
{
    list<PCB>::iterator iter;
    list<PCB>::iterator iterTemp;
    for(iter = begin(); iter != end(); iter++)
    {
        if(iter->arrivalTime == 0)
        {           
            ReadyQueue::getInstance()->add(*iter);
            iterTemp = iter;
            iter++;
            erase(iterTemp);
        }
    }
}

Ich bin kein C ++ - Experte und so weit hat mich der VS-Debugger gebracht. Könnte mir jemand erklären, wo das Problem liegt?

Vielen Dank

Antworten auf die Frage(8)

Ihre Antwort auf die Frage