Wie Daten im Vector am schnellsten finden?
-
Hallo zusammen,
gibt es andere Möglichkeiten, abgelegtes in einem Vector wieder zu finden außer den immer wieder von Anfang an zu durchsuchen/iterieren ?
Bzw. gibt es Alternativen um über einen Index oder so direkt auf Daten zugreifen zu können?
struct { int PersonalNummer; String Name; } Personal; std::vector <Personal *> vectPersonal;
Im Vector:
PersonalNummer | Name
----------------------
23423 | Peter
58832 | PaulvectPersonal.at(23423)->Name = "Peter"
Besten Dank schonmal
-
...
-
-
Hallo
Verwende std::find auf deinem vector (dann must du aber einen Vergleichsoperator für deine Klasse Personal schreiben, und/oder eine Adapterfunktion weil du Zeiger in deinem Vektor verwendest), oder gleich std::map anstelle vector.
Und auch die Verwendung von Zeigern als Elemente ist fragwürdig, vermeide das wenn es nicht notwendig ist.bis bald
akari
-
Schau dir mal std::unordered_map bzw. unordered_set an...