Hallo Leute, ich erstelle eine Liste aus einer meiner Klassen. Damit ihr euch das ganze Vorstellen könnt: Es ist ein Spiel, sowas in der Art wie ein Arkanoid- Spiel. 1 Stein = Object einer Klasse(cStone.vb). List Of cStone.vb = Liste der Steine.
Wenn ich jetzt mit dem Ball einen Stein treffe, entferne ich diesen aus der Liste(liste.remove(guid)). Nach 2 oder 3 Steine bekomme ich eine exception, bei der Überprüfung welche Steine noch zum zeichnen da sind, da sich die Liste ja verkleinert.
Habe bereits dannach gegooglet aber nur wenig darüber gefunden. Es scheint ja ein bekanntes Problem zu sein aber ich steige bei der Lösung nicht durch. Klar könnte ich noch eine weitere Property mit Visible true/false machen, jedoch wäre es mir lieber die Objekte aus dem Speicher zu schmeissen.
Ist doch eindeutig ;-) D.h. du solltest immer die aktuelle Liste fürs Zeichnen verwenden und nicht die ursprüngliche über welche (per foreach) iteriert wird da diese eben geändert wird.
Du meinst? for each obj in Liste .. obj = nothing .. next ? Das entspricht im wesendlichen seinem Gedanken: "Klar könnte ich noch eine weitere Property mit Visible true/false machen, jedoch wäre es mir lieber die Objekte aus dem Speicher zu schmeissen."
D.h. du solltest immer die aktuelle Liste fürs Zeichnen verwenden und nicht die ursprüngliche über welche (per foreach) iteriert wird da diese eben geändert wird.