Middle
Go-da bağlama nədir?
sobes.tech Süni İntellekt
AI-dan cavab
Go-da bağlama, ətraf mühitin qiymətlərini "xatırlayan" və xarici funksiyanın bitməsindən sonra belə onları saxlayan funksiyadır. Bu, xarici dəyişənləri ələ keçirməyə və içində istifadə etməyə imkan verir.
// Xarici funksiya
func makeCounter() func() int {
count := 0 // Əldə ediləcək dəyişən
// Daxili funksiya (bağlama)
return func() int {
count++ // count-u ələ keçir və dəyişdir
return count
}
}
// İstifadə nümunəsi
func main() {
counter1 := makeCounter() // Birinci bağlamanı yaradın
fmt.Println(counter1()) // Çıxış: 1
fmt.Println(counter1()) // Çıxış: 2
counter2 := makeCounter() // İkinci bağlamanı yaradın (öz count ilə)
fmt.Println(counter2()) // Çıxış: 1
}