Discutiamo di mutabilità e come usarla in ruggine.
Per impostazione predefinita, tutte le variabili in ruggine sono immutabili. Ciò significa che non è possibile modificare il valore dopo l'inizializzazione.
Per esempio:
fn main ()
Sia var = 10;
var = 100;
Se eseguiamo il codice sopra, il compilatore Rust fallirà e restituirà un errore come mostrato:
Errore [E0384]: Impossibile assegnare due volte alla variabile immutabile 'VAR'
Sebbene le variabili siano immutabili per impostazione predefinita, è utile avere una variabile mutabile. Possiamo rendere una variabile mutabile usando la parola chiave MUT davanti al nome variabile. Ciò dice al compilatore che le altre parti del programma possono modificare la variabile.
Esempio:
fn main ()
Lascia mut var = 10;
var = 100;
Con la parola chiave MUT, possiamo modificare il valore del var variabile da 10 a 100.
Costanti
Le costanti sono strettamente simili alle variabili immutabili. Quindi, una volta dichiarato un valore, non è possibile modificare il valore in altre parti del programma.
Ciò che rende le costanti diverse dalle altre variabili immutabili è che sono dichiarate utilizzando la parola chiave const invece di let e non puoi renderle mutabili.
Per esempio:
const pi: f64 = 3.14159
Il tentativo di impostare una variabile costante come mutabile comporterà un errore:
const mut pi: 64 = 3.14159
Il codice sopra dovrebbe restituire:
Errore: i consigli globali non possono essere mutabili
Rust ti impedisce di impostare un valore come mutabile. Tieni presente che il valore di una variabile costante dovrebbe essere un'espressione costante e non il risultato di un'espressione calcolata. Controlla il nostro tutorial su Costanti Rust per saperne di più.
Ombra
L'ombra si riferisce a una tecnica in cui una variabile viene "sovrascritta" con un altro valore con lo stesso nome.
Ad esempio, puoi avere una variabile chiamata VAR con il valore 10. È quindi possibile ridipingere quella variabile con lo stesso nome e assegnargli un valore di 100. Quando ciò accade, diciamo che la seconda variabile ombreggia la prima.
Prendi l'esempio di seguito:
fn main ()
Sia var = 10;
Sia var = 100;
Nell'esempio sopra, abbiamo il var variabile che contiene il valore 10. Creiamo quindi un ambito interno che ombreggia la variabile nell'ambito interno.
Tieni presente che l'ombra non è simile all'impostazione di una variabile come mutabile.
Conclusione
Questo era un breve tutorial che copre variabili e mutabilità nella ruggine. Controlla la documentazione per esplorare ulteriormente.