Suchen und Finden
Service
Infos und Kontakt
4 TEMPLATES (S. 95)
In diesem Kapitel soll es um generische Programmierung in C++ gehen. Wer dieses Kapitel durchgearbeitet hat, sollte folgende Fähigkeiten erlangt haben:
4.1 GENERISCHE PROGRAMMIERUNG
Von vielen Programmierern wird eine wichtige Eigenschaft von C++ als großer Vorteil angesehen: das Typkonzept und die damit verbundenen Typprüfungen von Operationen oder Funktionsaufrufen.
Gelegentlich kann es jedoch erforderlich sein, einen Algorithmus oder ein Konzept umzusetzen, die für Daten unterschiedlicher Typen verwendet werden können. Beispiele hierfür sind numerische Algorithmen, die für alle numerischen Datentypen (int, double, ...) eingesetzt werden können, aber auch Containerklassen, die als Alternative zu Arrays zahlreiche Werte eines bestimmten Typs speichern können. Die Operationen auf Containerklassen – Lese- und Schreibzugriffe auf die Werte im Container, Anhängen oder Löschen von Werten – unterscheiden sich dabei nicht in Abhängigkeit vom Typ der Werte. Daher genügt es, erst bei der Benutzung eines Containers zu wissen, Werte welchen Typs darin gespeichert werden sollen – der Aufbau des Containers ist generisch.
C++ bietet zur Unterstützung der generischen Programmierung das Konzept des Templates an. Wir wollen dies anhand von Funktionen und Klassen kennen lernen.
4.2 TEMPLATEFUNKTIONEN
Stellen wir uns vor, wir wollen eine Funktion schreiben, die uns die Summe der Werte eines Feldes berechnet, von dem wir einen Zeiger auf den Anfangspunkt und die Anzahl der Elemente übergeben. Es soll sich zunächst um ganzzahlige Werte handeln:
Alle Preise verstehen sich inklusive der gesetzlichen MwSt.; Ersparnis im Vergleich zur Printversion




















