Standard Template Library (STL) und Standard C++ Library

Empfohlene Schulungsdauer: 3 Tage, insgesamt 24 Unterrichtsstunden à 45 Minuten

Kursziele

Das Seminar stellt die umfangreiche C++ Standard Library mit ihren Klassen und Funktionen vor. In den Vordergrund der Weiterbildung rückt vor allem die Standard Template Library (STL), eine bei ANSI und ISO standardisierte Klassenbibliothek für Datenstrukturen und Algorithmen. Ausführliche Beispiele zeigen den Umgang mit den unterschiedlichsten Algorithmen und Fragestellungen aus dem Programmieralltag.

Zielgruppe

Software-Entwickler

Kursvoraussetzungen

Der Kurs ›Objektorientiertes Programmieren mit C++‹ oder vergleichbare Kenntnisse. Praktische Erfahrung mit Templates ist vorteilhaft.

Seminarinhalte

  • Einführung in die Standard C++ Library

    - Bestandteile der Standard Library
    - ISO C90 C Standard Library
    - Standard Template Library als Teil der C++ Standard Library
    - Header-Dateien, Namensraum std
    - Compiler-Unterstützung
  • Ein-/Ausgabe

    - Header-Datei <iostream>
    - Standard-Objekte cout, cerr, clog, cin und ihre Eigenschaften
    - Möglichkeiten aus <iosfwd>, <ios>, <streambuf>, <istream>, <ostream>, <iomanip>, <sstream>, <fstream>, <strstream>
  • Strings und Lokalisation

    - Header-Datei <string>
    - Sequences
    - wstring
    - Header-Datei <locale>
    - locale
    - ixXXX()-Funktionen
    - time_XXX, money_XXX usw.
  • Standard Template Library (STL)

    - Architektur und Philosophie der STL
    - Generische Programmierung der Container
    - Sequenzen: vector, list, deque
    - Assoziativspeicher/Mengen: set, multiset, map, mutlimap, hash_set, hash_multiset, hash_map, hash_multimap
    - Sonstige Container: priority_queue, stack, bitset, valarray
    - Laufzeitvergleiche
    - Iteratoren und die Header-Datei <iterator>
    - Iterieren über Datenstrukturen und Dateien/Stream Iterators
    - Algorithmen und die Header-Datei <algorithm>
    - Functors/Funktionsobjekte, Prädikate
  • Weiteres aus der Standard C++ Library

    - Sprachunterstützung: <limits>, <new>, <typeinfo>, <exception>
    - <utility> und Paare
    - Allokatoren, Speicherverwaltung und Auto-Pointer, <memory>
    - Diagnostik und Fehlerreport, Exceptions: <stdexcept>
    - Numerische Helfer: <complex> (complex), <valarray> (valarray, slice, …), <numeric> (accumulate(), …)
  • Alternativen und Erweiterungen

    - Boost C++ Libraries
    - MFC (Microsoft Foundation Classes)
    - Qt: Cross-Platform Rich Client Development Framework von Nokia

Eingesetzte Seminar-Software

Basis des C++-Kurses ist ein beliebiger C++-Compiler wie GCC oder Microsoft Visual C++. Als Entwicklungsumgebung kommt je nach Wunsch Microsoft Visual C++ oder die Eclipse CDT zum Einsatz.

Schlagwörter

Weiterführende Seminare

Das Seminar Boost C++-Bibliotheken liefert einen umfassenden Einblick in die Boost-Klassen, die als sinnvolle Ergänzung zur STL gilt.

5
142