Sobes.tech
Назад к вопросам
Junior — Middle
78

Имел ли опыт использования обобщённых типов в программировании?

Ответ от нейросети

sobes.tech AI

Обобщённые типы (generics) в Go позволяют писать функции и структуры, которые работают с разными типами данных, сохраняя при этом типобезопасность. С введением generics в Go 1.18 можно объявлять параметры типов и использовать их в коде.

Пример простой обобщённой функции для обмена значениями двух переменных:

package main

import "fmt"

type any = interface{}

func Swap[T any](a, b T) (T, T) {
    return b, a
}

func main() {
    x, y := 1, 2
    x, y = Swap(x, y)
    fmt.Println(x, y) // 2 1

    a, b := "hello", "world"
    a, b = Swap(a, b)
    fmt.Println(a, b) // world hello
}

Таким образом, generics позволяют писать более универсальный и переиспользуемый код.