Ambito di una variabile

Definizione rapida

Insieme delle porzioni di codice dalle quali è possibile riferirsi a una determinata variabile.

Spiegazione

La posizione della dichiarazione e le regole del linguaggio stabiliscono l'ambito. Una variabile locale è normalmente accessibile nel blocco o nella funzione che la contiene; una variabile definita a livello di modulo può essere disponibile a più routine. Funzioni annidate possono inoltre acquisire nomi dall'ambiente esterno mediante chiusure.

Esempio pratico

Se `totale` viene dichiarata all'interno di un ciclo con scope di blocco, un'istruzione posta dopo la chiusura del ciclo non può usarla.

Spiegazione tecnica

Gli scope formano spesso una gerarchia lessicale. La ricerca dell'identificatore procede dal contesto più interno verso quelli esterni, finché trova una dichiarazione compatibile o segnala un nome non definito.

Da non confondere con

Non va confuso con il valore della variabile: l'ambito stabilisce dove il nome è accessibile, non quale dato contenga in un dato momento.