Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!
Werbeanzeige
killmichnich
unregistriert
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 |
class CGegner { ... }; map<int, CGegner>mymap; map<int, CGegner>myiterator; dann wollt ich sowas machen: for(myiterator=mymap.begin(); myiterator!=mymap+end(); myiterator++) { Gegner[*myiterator].Draw(); } |
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 8 |
class CGegner { ... }; map<int, CGegner> mymap; //bitte mit abstand.. map<int, CGegner>::iterator myiterator; for(myiterator=mymap.begin(); myiterator!=mymap.end(); myiterator++) { myiterator->second.Draw(); } |
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 |
class CGegner { ... }; map<int, CGegner> mymap; for(map<int, CGegner>::iterator myiterator = mymap.begin(); myiterator != mymap.end(); ++myiterator) { myiterator->second.Draw(); } |
C-/C++-Quelltext |
|
1 |
myiterator->second.Draw(); |
killmichnich
unregistriert
Zitat von »"Faule Socke"«
Wenn du als schlüssel sowieso einen int nimmst, wäre ein std::vector besser für dich geeignet, mit offset adressierung kannst du wesentlich schneller arbeiten und du kannst das ganze auch viel schneller durchlaufen (mit dem [] operator dem übergibst du deinen int, so wie bei einem normalen array, ist schneller wie nen iterator).
Zitat von »"dot"«
Zitat von »"Faule Socke"«
Wenn du als schlüssel sowieso einen int nimmst, wäre ein std::vector besser für dich geeignet, mit offset adressierung kannst du wesentlich schneller arbeiten und du kannst das ganze auch viel schneller durchlaufen (mit dem [] operator dem übergibst du deinen int, so wie bei einem normalen array, ist schneller wie nen iterator).
Prinzipiell hast du recht, allerdings bedeutet ein int als Schlüssel noch lange net dass es sich dabei um indices handelt. Könnten genausogut Telefonnummern sein. Und in dem Fall würd ich mir die Sache im Hinblick auf Speicherverrauch nochmal genau überlegen...
killmichnich
unregistriert
Werbeanzeige