Ein Vektor ist ein Container, der sich grob selbst verwalten kann, was
die Groesse angeht. Ein Array wird angelegt und hat eine feste groesse.
In einem Vektor hast du aber dynamische Speicherverwaltung.
Beispiel:
Du legst einen Vektor mit 6 Elementen an. Sind die 6 Elemente belegt,
wird neuer Speicher angefordet. Der Speicher wird verdoppelt, so dass
der Vektor jetzt 12 Elemente fassen kann. Entnimmst du dem Vektor
Elemente, wird wieder Speicher freigegeben, und zwar wenn der Vektor nur
noch ein viertel belegt ist, wird der Speicher um die haelfte
verkleinert.
Start:
Vektor der groesse 6. Es werden 6 Elemente in den Vektor gepakt.
Vektor vergroesserung auf Groesse 12.
Element entnahme, bis nur noch 3 Elemente im Vektor sind.
Vektor verkleinerung von 12 auf 6.
Du musst dir also keine Gedanken darueber machen, wie viele Elemente du
Speichern willst. Bei einem Array, egal ob statisch oder dynamisch,
musst du aber wissen wie viele Elemente es haben soll.
Ein Array kannst du halt nicht vergroessern oder verkleinern. Wenn du
das machen willst musst du Speicher anfordern, den Inhalt des alten
Arrays ins neue Array kopieren, das alte Array freigeben.