format - alege un puzzle de rezolvat

În programarea calculatoarelor, șabloanele sunt o caracteristică a limbajului de programare C++ ce permit scrierea de cod fără a lua în considerare tipul de dată ce va fi utilizat până la urmă. Șabloanele permit programare generică în C++. Șabloanele sunt foarte utile programatorilor în C++, mai ales când sunt combinate cu tehnica moștenirilor multiple și a supraîncărcării operatorilor. Biblioteca Standard de Șabloane (STL) a limbajului C++ aduce multe funcții utile într-un cadru de șabloane conectate. Există două feluri de șabloane. Un șablon funcție se comportă ca o funcție ce poate accepta argumente de tipuri foarte diferite. De exemplu, Biblioteca Standard de Șabloane a limbajului C++ conține șablonul funcție max(x, y) ce returnează x sau y, pe cel mai mare dintre cele două argumente. max() ar putea fi declarat cam așa: Acest șablon poate fi apelat într-un mod identic cu apelul de funcție: Prin examinarea argumentelor, compilatorul deduce că acesta este un apel la max(int, int) și produce (în engleză "instantiates") o versiune a funcției în care tipul a devine int. Acest procedeu este valid pentru toate cazurile în care argumentele x și y sunt de tip întreg, șir de caractere, sau de orice alt tip pentru care expresia "x < y" are sens. În cazul în care v-ați definit propriul tip de dată, puteți folosi supraîncărcarea operatorilor pentru a defini înțelesul lui < pentru tipul ales, dând astfel voie să folosiți funcția max().