Home Insegnanti Contattami Portfolio

Funzioni

1️⃣ Descrizione

Le funzioni in C++, e in generale in tutti i linguaggi di programmazione, sono sostanzialmente dei blocchi di codice riutilizzabili; possono essere pensate come dei “sottoprogrammi” richiamabili da altri programmi.

Lo scopo principale dell’uso delle funzioni è quello di poter riutilizzare il codice che si scrive (senza doverlo quindi riscrivere più volte!), inoltre l’utilizzo delle funzioni aumenta la leggibilità dei programmi che le richiamano snellendone il codice e aiuta a dividere la risoluzione di un problema in sottoproblemi.

2️⃣ Sintassi

La sintassi di una funzione in in generale è:

📎
<tipo_ritorno> nome_funzione ([<elenco_parametri>]) {

<istruzioni>

return valore_restituito;
}

Dove:

3️⃣ Valore di ritorno

4️⃣ Parametri per Valore vs per Riferimento

funzioni con parametri per valore

Parametri per valore: i parametri passati per valore vanno specificati all’interno delle parentesi tonde dopo il nome della funzione specificando per ogni parametro il nome preceduto dalla sua tipologia; quando sono presenti più parametri vanno separati da virgolo. Quando si passa un parametro in questo modo all’inizio dell’esecuzione della funzione il valore memorizzato all’interno della variabile passata come parametro viene copiato in una nuova variabile della funzione. I parametri passati per valore possono essere anche opzionali, ovvero si possono creare funzioni che possono ricevere un numero diverso di parametri; questo si fa assegnando ad alcuni parametri dei valori di default.

Funzioni con parametri per riferimento

Parametri per riferimento: affinché una funzione riceva un parametro in questo modo è necessario anteporre una & prima del nome del parametro. I parametri passati in questo modo fanno sì che i cambiamenti che all’interno del codice della funzione su un parametro avvengano anche sulle variabili del programma chiamante. I parametri passati per riferimento non possono né essere opzionali né essere valori numerici.

Ad esempio:

void funzione (int valore,int &riferimento) {
   valore++;
   riferimento++;
}

int main() {
   int x=0;
   int y=0;

   funzione(x,y);

   cout << x << endl; // -> 0 poiche' x e' passato per valore;
   cout << y << endl; // -> 1 poiche' y e' passato per riferimento;
}

📑 Esercizi

Esercizi con le funzioni in C++
29 Esercizi svolti di programmazione informatica sulle funzioni in C++ con le soluzioni eseguibili, esercizi con parametri passati per valore, per riferimento, parametri opzionali, variabili global…
https://ticoprof.wordpress.com/2020/09/24/esercizi-con-le-funzioni-in-cpp/