Nivelul 3 — Funcții
Funcții
Note originale de SunDiaL · Vezi sursa în engleză
Funcțiile sunt operații personalizate. O operație personalizată este o bucată de cod pe care ai scris-o și căreia îi dai un nume pentru a o putea reutiliza.
Să presupunem că ai scris un program care calculează factorialul unui număr. Poți transforma acel cod într-o funcție, pe care să o folosești ulterior pentru a calcula factorialul oricărui număr. După cum probabil ai observat, acest lucru presupune doi pași.
Definirea unei funcții
Definirea unei funcții este o instrucțiune declarativă. O funcție este definită prin tipul returnat, nume, parametri și un domeniu de vizibilitate.
Tipul returnat
O funcție poate returna sau nu o valoare. Dacă returnează o valoare, tipul returnat este tipul de date al acesteia. Dacă nu returnează o valoare, tipul returnat este void, un cuvânt-cheie care indică absența unui tip de date.
Numele
Numele este pur și simplu un nume, fără nimic special. Există câteva restricții privind denumirea funcțiilor, dar compilatorul te va avertiza în privința lor.
Parametrii funcțiilor
Exemple:
//a function without return type
void SomeFunction()
{
//do stuff
}
//a function with return type int
int SomeOtherFunction()
{
return 5;
}
Pentru mai multe exemple cu parametri, vezi parametrii funcțiilor.
Apelarea unei funcții
Invocarea (apelarea) unei funcții este o instrucțiune imperativă. Aceasta face calculatorul să execute pașii definiți. Se face folosind numele funcției și furnizând valori pentru parametrii declarați. În plus, dacă funcția are un tip returnat, poate fi folosită într-o atribuire.
SomeFunction();
int someValue = SomeOtherFunction();
Pentru mai multe exemple cu parametri, vezi parametrii funcțiilor.