Funzione che non accetta nulla e non restituisce nulla.
Oltre ai tipi di dati elencati nei tipi di dati, ce n'è un altro: void, tradotto dall'inglese come "vuoto". Creando una funzione di tipo void, indichiamo al compilatore che non verranno restituiti valori. Scriviamo una funzione che troverà la somma di due numeri e la assegnerà al terzo numero. Poiché la funzione non ha parametri e non restituisce nulla, le variabili dovranno essere dichiarate in anticipo e rese globali, altrimenti la funzione non avrà accesso ad esse e otterremo un errore:
byte a, b;
int c;
void setup()
{
a = 5;
b = 7;
sumFunction();
// dopo la chiamata di funzione variabile c ha il valore 12
}
void loop()
{
}
void sumFunction()
{
c = a + b;
}
Questo è un pessimo esempio in termini di ottimalità del codice, ma miglioreremo ulteriormente questo esempio. Perché non va bene in questa fase: utilizziamo variabili globali e anche loro partecipano all'interno della funzione, e uno dei principi principali della programmazione C++ è la separazione di dati e azioni, oltre a ridurre al minimo il numero di variabili globali. Separando dati e azioni, puoi creare strumenti universali, la funzione discussa sopra non è universale: aggiunge globale a a globale b e scrive il risultato a globale c.
Un momento: una funzione di tipo void non sembra restituire nulla, ma l'utilizzo di return consentirà di terminare la funzione per condizione o in altro modo. È molto conveniente!