Anlegen eines Vektors

Um einen Vektor instanziieren zu können, ist die Informationsdatei <vector> einzubeziehen. Bei der Instanziierung muss der Elementtyp angegeben werden. Zumeist ist vor dem Einfügen von Elementen die Reservierung von Arbeitsspeicher zweckmäßig.

Das folgende Beispiel zeigt einen kurzen, vollständigen Quelltext, mit welchem das Verhalten zweier Konstruktoren, der Elementfunktion reserve und der Unterschied zwischen Größe und Kapazität eines Vektors verdeutlicht werden soll.

#include <iostream>
#include <vector>

using namespace std;

template<class T>
void showVectorProperties(const vector<T>& v, const char* str = "")
{
 cout << str
  << "Groesse = " << v.size()
  << ", Kapazitaet = " << v.capacity()
  << endl;
}

int main()
{
 vector<double> dvector_1, dvector_2(100), dvector_3;
 dvector_3.reserve(100);
 showVectorProperties(dvector_1,"Double-Vector_1: ");
 showVectorProperties(dvector_2,"Double-Vector_2: ");
 showVectorProperties(dvector_3,"Double-Vector_3: ");
 return 0;
}

Ausgaben des Programms

Auftrag 1

Stellen Sie mit Hilfe der Programmausgaben die Unterschiede zwischen den drei konstruierten Vektoren vor dem Ende der main-Funktion fest!
Interpretieren Sie, was die beiden verwendeten Konstruktoren bezüglich der Datenkollektion tun!
Was bewirkt der Aufruf der Elementfunktion reserve mit dem Parameterwert 100?