Podręcznik
1. Algorytmy uogólnione
Zaczynamy omawiać nowy paradygmat programowania - programowanie generyczne (uogólnione), gdzie typ danych może być wykorzystany jako parametr. Do wsparcia programowania generycznego w C++ przeznaczono szablony. Język C++ ma silną kontrolę typów - a więc wymaga, aby wszystkie zmienne miały określony typ, jawnie zadeklarowany przez programistę lub wydedukowany przez kompilator. Jednak wiele struktur danych i algorytmów wygląda tak samo niezależnie od typu, na jakim działają. Szablony umożliwiają zdefiniowanie operacji klasy lub funkcji i umożliwienie użytkownikowi określenia konkretnych typów, na których te operacje powinny działać.