Назад к вопросам
Avito
Junior — Middle
78
Можно ли в языке Go передавать функцию как аргумент другой функции?
Компании, где спрашивали
Ответ от нейросети
sobes.tech AI
Да, в языке Go функции являются значениями первого класса, поэтому их можно передавать как аргументы другим функциям, возвращать из функций и присваивать переменным.
Пример передачи функции как аргумента:
package main
import "fmt"
func applyOperation(a, b int, op func(int, int) int) int {
return op(a, b)
}
func main() {
sum := func(x, y int) int { return x + y }
result := applyOperation(3, 4, sum)
fmt.Println(result) // Выведет 7
}
Таким образом, Go поддерживает функциональный стиль программирования с передачей функций как параметров.