Witam!
W poniższym programie zmienne przekazywane są przez referencję.....Jednak nie do końca rozumiem co to jest ta referencja i na czym ta metoda polega?
#include <cstdlib>
#include <iostream>
using namespace std;
void nie_zwieksz(int i);
void zwieksza(int& i);
int main()
{
int a=0,b=0;
cout <<"Wartosc zmiennej a przed wykonaniem funkcji =\t"<<a
<<"\nWartosc zmiennej b przed wykonaniem funkcji =\t"<<b<<"\n\n";
nie_zwieksz(a);
zwieksza(b);
cout <<"Funkcje zostaly wykonane pomyslnie!\n\n";
cout <<"Wartosc zmiennej a po wykonaniu funkcji =\t"<<a
<<"\nWartosc zmiennej b po wykonaniu funkcji =\t"<<b<<"\n\n";
system("PAUSE");
return 0;
}
void nie_zwieksz(int i)
{
++i; // tak naprawdę funkcja nie robi nic, bo zmieniona zostaje tylko lokalna kopia (istniejaca wylacznie wewnatrz funkcji)
}
void zwieksza(int& i)
{
++i; // ta funkcja wykonuje zmiane na zmiennej przekazanej do niej za pomoca referencji (istniejaca poza funkcja)
}