Sobes.tech
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.