Breymann. C++ Einführung und professionelle Programmierung

Breymann. C++ Einführung und professionelle Programmierung Breymann. C++ Einführung und professionelle Programmierung

vred.bioinf.uni.sb.de
von vred.bioinf.uni.sb.de Mehr von diesem Publisher
17.11.2014 Aufrufe

11.1 Die C++ Standardbibliothek, generischer Teil (STL) Sprachspezifische Klassenbibliothek mit generischen Komponenten (Teilmenge STL). Die STL unterscheidet zwei Ebenen: 1. Standard-Container und -Algorithmen für verschiedene Datentypen → immer dann angebracht, wenn das geforderte Verhalten des Containers bzw. der Algorithmen für alle Datentypen dasselbe sein soll. Realisierung durch Templates. Beispiel: template class stack { // Stack-Methoden und Attribute }; // Benutzung stack einIntStack; Breymann C++, c○ Hanser Verlag München Inhalt ◭◭ ◭ ◮ ◮◮ 420 zurück Ende

stack einStringStack; stack einXYZstack; // für beliebige XYZ-Objekte 2. Schnittstellenobjekte zur Entkopplung von Containern und Algorithmen Vorteil: Reduktion der Größe und Komplexität der Library. Begründung: Annahme: Es werden k Algorithmen (find, copy, ...) für n verschiedene Container (vector, stack, list) und m verschiedene Datentypen (float, int) benötigt. OHNE STL und Templates sind dann k · n · m Algorithmen notwendig. • Templates reduzieren m auf 1. • Entkopplung durch Iteratoren reduziert k · n auf k + n Breymann C++, c○ Hanser Verlag München Inhalt ◭◭ ◭ ◮ ◮◮ 421 zurück Ende

stack einStringStack;<br />

stack einXYZstack;<br />

// für beliebige XYZ-Objekte<br />

2. Schnittstellenobjekte zur Entkopplung von Containern <strong>und</strong> Algorithmen<br />

Vorteil: Reduktion der Größe <strong>und</strong> Komplexität der Library. Begründung:<br />

Annahme: Es werden k Algorithmen (find, copy, ...) für n verschiedene<br />

Container (vector, stack, list) <strong>und</strong> m verschiedene Datentypen (float, int)<br />

benötigt. OHNE STL <strong>und</strong> Templates sind dann k · n · m Algorithmen<br />

notwendig.<br />

• Templates reduzieren m auf 1.<br />

• Entkopplung durch Iteratoren reduziert k · n auf k + n<br />

<strong>Breymann</strong> <strong>C++</strong>, c○ Hanser Verlag München<br />

Inhalt ◭◭ ◭ ◮ ◮◮ 421 zurück Ende

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!