Container-Klasse zur verwaltung von Listen?

Prophet05

Erfahrenes Mitglied
Moin,

ich suche nach einer Klasse die es mir ermöglicht möglichst einfach eine Liste zu verwalten. Das heißt:
> Elemente hinzufügen
> Elemente löschen
> Elemente verschieben
> Elemente ersetzten
> Elemente sortieren
> Elemente auslesen
> usw.

Mir ist es wichtig das das ganze in der Standard Bibliothek oder der STL von C++ bereits vorhanden ist damit jeder es überall mit einem GCC Compiler compilieren kann. Gibt es eine solche Klasse/Template oder muss ich mir das selber schreiben? Kennt jemand einen Ort wo ich mir entsprechende Header die solch eine Klasse enthalten herunterkladen kann?

Ich habe mich bereits mit vector und list auseinander gesetzt jedoch fehlen diesen Klassen einfach dinge wie das überschreiben von Elementen. Sie sind zwar gut geeignet um Listen zu erstellen und um auf sie zuzugreifen allerdings bieten sie meinermeinugn nach nicht die einfachen fähigkeiten eine Liste möglichst leicht zu modifizieren.

Ich stelle mir eine Klasse vor die ArrayList aus der Java-Bibliothek ähnelt. Gibt es sowas?

Gruß, Prophet05
 
Was ist denn an der STL list so schlecht?

Überschreiben geht doch relativ einfach:

Code:
list<string> liste;
list<string>::iterator iter = liste.begin();
for(iter ; iter != liste.end() ; ++iter)
{
  if(möchte dieses element überschreiben Bedingung)
  {
    string alterstring = *iter;
    *iter = "neuer string";	// schon isser überschrieben wenn mich nicht alles täuscht
  }
}
Gibt glaube sogar den Feld Operator für die STL List dann müsstest du nichtmal die Liste durchgehn zum überschreiben, bin mir aber gerade nicht sicher.

Nur weil die STL list keine direkte Funktion replace oder zur Verfügung stellt muss es nicht gleich schlecht sein :)

MfG Turri
PS: der Code ist quick and dirty geproggt ohne zu testen ;)
 
Zuletzt bearbeitet:
Ich habe mitlerweile herausgefunden das es mit vector recht einfach geht.

Ich finde einfach nur umständlich das eine einfache zuweisung so kompliziert gemacht wird. Intern ist es doch sowiesoe ein array warum dann keine funktion zum zuweisen.

Naja das Problem hat sich erledigt, vielen dank!

Ich markiere es nicht als erlediigt weil ich doch gerne wissen würde ob nicht jemand eine seite kennt auf der soetwas schon mal nachgebaut wurde.
 
Zurück