Ich habe diese Funktion erstellt, die mit Vektoren, verknüpften Listen und doppelt verknüpften Listen funktioniert. Die Funktion nimmt einen Wert und sucht im Container danach. Wenn sich der Wert im Container befindet, fügt die Funktion den Wert direkt neben dem bereits vorhandenen Wert ein. Also, wenn val=2
dann {3,2,5}
wird {3,2,2,5}
werden. Wenn der Wert im Container nicht vorhanden ist, wird er stattdessen auf der Rückseite hinzugefügt.EXC Schlechter Zugriff mit Iteratoren
Ich schrieb diese Funktion mit Iteratoren. Es funktioniert gut mit einem Vektor, aber wenn ich versuche, es mit einer Liste oder doppelt verknüpften Liste auszuführen, erhalte ich einen Exc Bad Access-Fehler in der Zeile if (*it==val)
. Ich sehe nicht, was ich falsch gemacht habe.
Edit: Vielen Dank an alle! Ihr Vorschlag, die if
Erklärung zu ändern, hat perfekt funktioniert!
Wenn das 'val' nicht gefunden wird, dann leitet die' if' Bedingung das Endelement ab, das zu UB führt. – Mahesh