16.09.2017 Aufrufe

Vorkurs Informatik

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

C.2 Grundkonzepte 337<br />

C.2.4 Klassenbibliotheken<br />

Anstatt der Verwendung von Arrays wird in C++ vielfach die über die Standardbibliothek bereitgestellte<br />

Klasse vector genutzt, da diese u. a. eine variable Länge zur Laufzeit des Programms erlaubt. Die<br />

sogenannte Standardbibliothek enthält verschiedene vordefinierte Klassen (Datenstrukturen) für viele Anwendungssituationen.<br />

In diesem Zusammenhang sei an das Prinzip des Sortierens (s. Abschnitt 13) oder<br />

an die Verwaltung von Datenmengen (s. Abschnitt 14) erinnert. Die Funktionalität der Standardbibliothek<br />

lässt sich dabei in die drei Teilbereiche<br />

• Container<br />

• Algorithmen<br />

• Iteratoren<br />

gliedern. Container kapseln dabei Speicherstrukturen, z. B. Bäume oder Listen, Algorithmen entsprechende<br />

Operatoren zur Bereitstellung von Funktionalitäten für diese (Container-)Klassen, z. B. das Sortieren<br />

einer Liste, und Iteratoren repräsentieren schließlich Traversierungsoperatoren für Container-Klassen, um<br />

beispielsweise nacheinander auf die Inhalte eines Vektors zugreifen zu können.<br />

Der Quellcode C.5 zeigt an einem einfachen Beispiel die Verwendung der Klasse vector. Zur Bereitstellung<br />

der Funktionalität wird die Headerdatei zur Klasse vector über die uns bereits bekannte include-<br />

Anweisung (Zeile 2) eingebunden. Die Notwendigkeit des korrekten „Namespace“ wird über die in den<br />

vorhergehenden Beispielprogrammen bereits genutzte Anweisung „using namespace std;“ ebenfalls<br />

erfüllt. Ausgehend von diesen Vorbereitungen kann in der Zeile 7 schließlich ein Vektor einVektor mit<br />

vier Elementen vom Typ Integer deklariert und nachfolgend vergleichbar zu einem Array genutzt werden.<br />

Die Zeilen 8 bis 11 initialisieren den Vektor mit entsprechenden Werten und in übertragbarer Form kann<br />

auf den Inhalt des Vektors zugegriffen werden (Zeile 15). Zu beachten ist, dass die Methode „size()“<br />

1 #include <br />

2 #include <br />

3<br />

4 using namespace std;<br />

5<br />

6 int main(int argc, char* argv[]){<br />

7 vector einVektor(4);<br />

8 einVektor[0] = 4;<br />

9 einVektor[1] = 17;<br />

10 einVektor[2] = 6;<br />

11 einVektor[3] = 11;<br />

12 unsigned int index = 0;<br />

13 unsigned int laengeVektor = einVektor.size();<br />

14 while(index < laengeVektor){<br />

15 cout

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!