Junior — Middle
Spiega il concetto di variabile globale e le sue caratteristiche in un programma.
sobes.tech AI
Risposta dell'AI
Una variabile globale in Go è una variabile dichiarata al di fuori delle funzioni, di solito in un package, e accessibile in tutto il package o anche da altri package quando viene esportata (con lettera maiuscola).
Caratteristiche delle variabili globali:
- Vengono inizializzate all'avvio del programma, prima dell'esecuzione di main.
- Hanno ambito di package se il nome inizia con una lettera minuscola, o vengono esportate se inizia con una maiuscola.
- Sono usate per memorizzare uno stato accessibile da diverse funzioni.
- Possono causare problemi di accesso concorrente in programmi multithread, richiedendo spesso sincronizzazione (ad esempio, con mutex).
Esempio di una variabile globale:
package main
import "fmt"
var counter int = 0 // variabile globale
func increment() {
counter++
}
func main() {
increment()
fmt.Println(counter) // Stampa 1
}
L'uso di variabili globali dovrebbe essere minimizzato per evitare complicazioni nella manutenzione e nel testing del codice.