Funkcje

Funkcje stanowią podstawowy element programu w C++. Definicja funkcji ma następującą postać:

typ nazwa(lista_parametrów) {
   lista_instrukcji
}
gdzie

Dozwolone są również deklaracje funkcji:

typ nazwa(lista_parametrów);
Zawierają one jedynie informację, że nazwa jest nazwą funkcji (o zadanym typie i liście parametrów). Definicja funkcji powinna być podana później.

Przykłady:

void a();
funkcja o nazwie a, która nie ma parametrów i nie zwraca żadnej wartości.
int qqq();
funkcja o nazwie qqq bez parametrów, zwracająca wartość typu int.
double x(int a, char c, double tt);
funkcja o nazwie x, zwracająca wartość typu double. Wymaga trzech parametrów: pierwszego typu int, drugiego typu char, a trzeciego typu double.

Wywołanie funkcji

Każdą funkcję można wywołać przez

nazwa_funkcji(wartość_1, wartość_2, ...,wartość_n);
Wywołanie funkcji ma następujący efekt: Uwagi:

Przykłady wywołań funkcji

a();
n=qqq();
y=21.3*x(a, 'W', z/1.5);

Typy referencyjne

Wartością zmiennej typu referencyjnego (referencji) nie są dane, ale inna zmienna. Można ją traktować jak inną nazwą dla zmiennej już istniejącej. Typ referencyjny ma postać T&, gdzie T jest typem wskazywanym, np. int& oznacza referencję do zmiennej typu int. Każda referencja musi być zainicjowana w miejscu deklaracji, np. deklaracja
int a;
int& b=a;
jest poprawna, a
int& b;
nie jest.

Przykład.

int a=2;
int& b=a; // a==2, b==2
a=a+1; // a==3, b==3
b=b-2; // a==1, b==1

Podstawowym zastosowaniem referencji jest

Przekazanie parametru przez zmienną

Jeśli parametr funkcji jest typu referencyjnego, to w funkcji nie tworzy się kopia zmiennej - rachunki wykonywane są na podanym argumencie.

Kiedy używać referencji?