Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗goSpGnSv 88 of 280 menu
◀ ▶

Несколько параметров типа в Go

В одной функции может быть несколько параметров типа. Их перечисляют через запятую в тех же квадратных скобках после имени, у каждого свое ограничение.

Имена не связаны друг с другом: первый параметр может стать строкой, второй числом, если сигнатура это позволяет. Так удобно описывать пары разнородных значений или преобразование из одного типа в другой при общих ограничениях.

Вернем два значения разных параметров типа. На экране строка "ok" и число 1 в обратном порядке:

package main import "fmt" func Swap[A, B any](a A, b B) (B, A) { return b, a } func main() { x, y := Swap(1, "ok") fmt.Println(x, y) }

Объявите MakePair с параметрами типа A и B, верните оба аргумента в том же порядке, передайте целое 7 и строку "go" и выведите результат.

Дан следующий код:

func Both[A, B any](a A, b B) (A, B) { return a, b }

Скажите, сколько независимых имен типа у этой функции.

Даны числа:

p := 2 q := 3.5

Через Swap с двумя параметрами типа поменяйте местами p и q в две переменные и выведите их.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить