17.04.2013 Views

Florian Moraru PROGRAMAREA CALCULATOARELOR în limbajul C

Florian Moraru PROGRAMAREA CALCULATOARELOR în limbajul C

Florian Moraru PROGRAMAREA CALCULATOARELOR în limbajul C

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

apare ca un parametru formal (pot fi si mai multi parametri tip de date) si de aceea se<br />

mai numesc si clase cu tipuri parametrizate (cu parametri tipuri de date).<br />

In C++, cuvântul cheie "template" precede o definitie de functie sau de clasã <strong>în</strong> care<br />

unul sau mai multe tipuri de date sunt neprecizate. Tipurile neprecizate sunt date ca<br />

parametri, precedati fiecare de cuvântul cheie "class" si <strong>în</strong>cadrati <strong>în</strong>tre paranteze<br />

unghiulare ‘’.<br />

Exemplu de functie sablon pentru determinarea valorii minime dintre douã variabile<br />

de orice tip T, neprecizat la definirea functiei:<br />

// definire functie sablon cu un parametru "class"<br />

template T min (T a, T b) { // T poate fi orice tip definit anterior<br />

return a < b? a: b;<br />

}<br />

Cuvântul "class" aratã cã T este un parametru ce desemneazã un tip de date si nu o<br />

valoare, dar nu este obligatoriu ca utilizarea functiei "min" sã foloseascã un parametru<br />

efectiv de un tip clasã (<strong>în</strong> Java nu mai este necesar “class”). In functia “min” tipul care<br />

va <strong>în</strong>locui tipul neprecizat T trebuie sã cunoasca operatorul '

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!