Junior — Middle
Puteți explica ce înseamnă termenul de 'captură de variabilă' în contextul programării?
sobes.tech AI
Răspuns de la AI
În programare, termenul „capturarea variabilei” înseamnă că o funcție sau o închidere păstrează accesul la variabilele din domeniul exterior, chiar și după ce acea zonă și-a încheiat execuția.
De exemplu, în Go, poți crea o funcție care returnează o altă funcție care utilizează o variabilă din funcția exterioară:
func makeAdder(x int) func(int) int {
return func(y int) int {
return x + y // 'x' capturat de închidere
}
}
func main() {
addFive := makeAdder(5)
fmt.Println(addFive(3)) // Va afișa 8
}
Aici, funcția internă „captură” variabila x din funcția externă makeAdder. Acest lucru permite păstrarea stării între apeluri și crearea unor construcții mai flexibile.