Junior — Middle
¿Se puede acceder a una variable declarada dentro de una función desde fuera de su ámbito?
sobes.tech AI
Respuesta de la IA
В Go переменная, объявленная внутри функции, имеет локальную область видимости и недоступна вне этой функции напрямую.
Однако, можно получить доступ к значению переменной снаружи через замыкания (closures) или возвращая значение из функции.
Пример с замыканием:
func counter() func() int {
count := 0
return func() int {
count++
return count
}
}
func main() {
c := counter()
fmt.Println(c()) // 1
fmt.Println(c()) // 2
}
Здесь переменная count объявлена внутри функции counter, но доступна через возвращаемую функцию.
Прямого доступа к локальной переменной из вне функции без таких приёмов нет.