Passaggio parametri ad una funzione

di il
3 risposte

Passaggio parametri ad una funzione

Buongiorno,
premesso che ho abbastanza chiaro cosa significa passaggio un parametro per valore o riferimento ma non compreso bene il caso 1 di seguito descritto:

caso1:
int i=1, j=3;
scambia (i,j);

void scambia (int& ra, int& rb)
{
int t=ra;
ra=rb;
rb=t;
}

caso 2:
int i=1, j=3;
scambia (&i,&j);

void scambia (int* pa, int* pb)
{
int t=*pa;
*ra=*rb;
*rb=t;
}


Nel caso 2 anteponiamo ai parametri attuali il simbolo & per esplicitare che passiamo alla funzione l'indirizzo di memoria delle variabili i e j, corretto?
Nel caso 1 invece passiamo alla funzione il solo riferimento (si dice così giusto?!) cioè il nome delle variabili i e j ma i parametri formali sono di tipo int &, che significa?!

3 Risposte

Devi accedere o registrarti per scrivere nel forum
3 risposte