Download - Ripasso funzioni

Transcript
Page 1: Ripasso funzioni

RIPASSO INFORMATICA

Page 2: Ripasso funzioni

Funzioni Le funzioni sono così definite

Tipo nome (parametri)

{  … istruzioni ... 

(cioè il codice della funzione)

}

Tipo : il valore di ritorno della funzione

Nome : il nome della funzione

Parametri : lista dei parametri passati dal programma chiamante

Page 3: Ripasso funzioni

Dichiarazione di una funzione La dichiarazione di una funzione (detta

anche prototipo) é un'unica istruzione,

salvo il fatto che deve terminare con un punto e virgola. Esempio :

int CalcolaArea ( int lato, int base);

Page 4: Ripasso funzioni

Chiamata della funzione

In caso chiamata la funzione nel programma, il compilatore si occuperà di controllare che il tipo della funzione sia ammissibile.

funzione (int num)   { ..... num = num+1; .... }

int b = 0 ...... funzione(b); ..... In questo esempio dato i tipi coincidono. il programma, prima di chiamare funzione, copia il

valore della propria variabile b nell'argomento a, che diventa una variabile locale nell'ambito di funzione; per cui a "muore" appena il controllo ritorna al programma e il valore di b resta invariato, qualunque modifica abbia subito a durante l'esecuzione di funzione.

Page 5: Ripasso funzioni

Funzioni con overload

Diversamente da C, il linguaggio C++ permette che più funzioni abbiano lo stesso nome; queste funzioni sono definite come overload.

Il compilatore distingue le chiamate di funzioni con lo stesso nome a seconda della lista di parametri.

Page 6: Ripasso funzioni

Passaggi di parametri

Riferimento

  sono variabili introdotte dall'operatore di dichiarazione : &

Occupano la stessa memoria delle variabili a cui si riferiscono.

esempio: int a = &b;o Qualsiasi modifica fatta ad a si troverà

apportata anche alla variabile b

Page 7: Ripasso funzioni

Passaggio per riferimento In C++ posso passare come argomento

di una funzione un parametro per riferimento ( indirizzo ).

In questo caso, non viene creata una copia della variabile, come avviene per valore, ma la variabile di riferimento della sua corrispondente nel programma chiamante.

Page 8: Ripasso funzioni

Passaggio per valore

Nel caso si passi ad una funzione dei parametri come per valore, verrà creata una copia della variabile

Al momento del richiamo della funzione il valore dei parametri attuali sono ricopiati nello spazio di memoria allocato ai parametri formali.

Al termine della funzione l'ambiente locale viene eliminato