Es ist in dieser Übung nicht verlangt einen eigenen Container zu schreiben. Eine verkettete Liste ist fehleranfällig und mittels eines C-Arrays wird eine künstliche Grenze gezogen (wenn dieses nicht dynamisch erweiterbar gemacht wird). In C++ gibt es schon viele Container die sich in den wichtigsten Funktionen genau gleich verhalten. Siehe Seite 354 im Buch. Eine kurze Einführung in vector (Vorteil: Random Access möglich). CSong sei das zu verwaltende Lied. #includeusing namespace std; vector lieder; // vektor für CSongs lieder.push_back (new CSong("Lied1")); // element hinzu lieder.push_back (new CSong("Lied3")); lieder.push_back (new CSong("Lied1")); for (size_t i=0; i< lieder.size(); i++) { lieder[i]; // ungeprüfter zugriff, schreibend und lesend } lieder.at(4); // geprüfter zugriff, löst out_of_range exception aus Am Ende des Programmes müssen natürlich alle Lieder mit delete wieder gelöscht werden. Mit einem lieder.clear(); werden dann auch die Zeiger freigegeben. vector kann natürlich noch wesentlich mehr, aber nur mit diesen wenigen Operatoren hat man schon ein beliebig wachsendes Array.