Skip to content

Latest commit

 

History

History
34 lines (27 loc) · 1.58 KB

File metadata and controls

34 lines (27 loc) · 1.58 KB

Литерал функции

Литерал функции — это полное определение анонимной функции, включающее сигнатуру и тело.

В примере fn := func(x, y int) int { return x * y }:

  • func(x, y int) int { return x * y } — полный литерал функции
  • func(x, y int) int — сигнатура функции (входные параметры и возвращаемый тип)
  • { return x * y } — тело функции

Структура литерала функции:

func(параметры) возвращаемыйТип { 
    // тело функции 
}

Ключевые характеристики:

  • Создается "на месте" без явного имени
  • Может быть напрямую присвоен переменной
  • Может быть передан как аргумент в другую функцию
  • Может захватывать переменные из окружающей области видимости

Примеры использования:

// Присваивание переменной
fn := func(x, y int) int { return x * y }
result := fn(5, 3) // result будет равен 15

// Передача как аргумента
numbers := []int{1, 2, 3, 4, 5}
doubled := map(numbers, func(x int) int { return x * 2 })

Литералы функций — мощный инструмент для создания гибких и динамических функциональных абстракций.