6. Templates
Templates erlauben es, Funktionen und Klassen zu deklarieren und zu definieren ohne bereits alle Datentypen festlegen zu müssen. Man erzeugt quasi eine Schablone, in der die Schnittstellen und Algorithmen (z. B. Suchalgorithmen, Speicherverwaltung, ...)  ausgeprägt werde. Die fehlenden Informationen werden bei der ersten Nutzung beigefügt.
Neben allen Vorteilen haben Templates den Nachteil, dass sie leicht Seiteneffekte verursachen und die Fehlersuche nur bedingt erleichtern. Bei dem Einsatz von Templates muss zwischen der Komplexität der Algorithmen und der Komplexität des entstehenden Programms abgewogen werden.