Hej Carsten.
> Tak for hjælpen - begge løsninger er en succes.
> Jeg ved desvære ikke hvorfor det løser problemet. De bøger jeg har læst,
> fortæller ikke noget om iteratorens gyldighed efter erase.
>
> Jeg håber du kan anbefale en bog eller et web-sted, der beskriver
> problemstillingen.
Jeg har lige anskaffet Meyers bog om STL hvor der netop står en del om
iteratorer der bliver invalideret i forbindelse med de forskellige
modifikationer på containere.
Bogen ligger selvf på jobbet så jeg kan ikke se om vector er en af dem han
advarer om, men mon ikke. Internt er en vektor jo organiseret som et C array
og der vil du ved sletning komme til at flytte alle elementerne så en
iterator kan vel sagtens komme til at pege ud i den blå luft efter den
forestilling.
Jeg har ikke læst bogen færdig (fik den i mandags og vi er tre der deler den
, men det er mit indtryk at der kommer en masse interessante ting frem i
teksten.
Men bogen er faktisk ikke en introduktion til STL, den taler meget om
forskellige implementeringer og hvad de betyder for bibliotekets egenskaber.
Det er for eksempel ikke nogen selvfølge at string objekter er thread safe,
jeg skal til at kigge i dokumentationen for at se om jeg risikerer problemer
med reference counting i Borland C++ og Visual Studio 6.
Nå ikke mere snak.
Her er informationen fra Amazon.
1 "Effective STL"
Scott Meyers;
Paperback; @ GBP 27.11 each
Usually available in 24 hours
Paperback - 240 pages (4 July, 2001)
Addison Wesley; ISBN: 0201749629
Med venlig hilsen
Jesper Wolf Jespersen