G
Hmm ja, jetzt wo ich drüber geschlafen hab komm ich schon eher drauf.
Im Debugger wird mir ein Wert für deriterator angezeigt, dieser ist gleich dem letzten Element vor end(), ich habe dabei aber nicht bedacht, dass der MS Debugger auch den Wert von Pointern anzeigt die ins leere zeigen, wird bei Iteratoren also nicht anders sein.
Ich glaub das nächste mal bevor ich einen Thread eröffne schlafe ich nochmal drüber.
Gelöst hat sich mein Problem trotzdem noch nicht damit, denn wenn ich mal einfach ein Element weniger lösche und deriterator also auf ein früheres Element zeigt, dann kommt der gleiche Fehler.
Ich werd mal sehen, ob ich irgendwie an die Adresse komme, auf die deriterator zeigt.
OK habe jetzt festgestellt, dass deriterator 80 Bytes hinter begin() liegt, jedes Element von dervector ist 16 Byte groß, speziell hier habe ich blos 3 Elemente, somit liegt 32 Byte zu weit hinten (was aber auch nicht end() entspricht glaube ich).
Ich muss mir jetzt wohl irgendwie eine Andere Lösung als erase() überlegen um an meinen Iterator zu kommen.