4 вопросов
Generics (параметрический полиморфизм) добавлены в Go 1.18. Квадратные скобки для параметров типа, constraints (any, comparable), type sets для ограничения типов.
Generics (параметрический полиморфизм) добавлены в Go 1.18 (март 2022). Это было одно из самых ожидаемых изменений. Синтаксис: func F[T any](x T) T.
Подробнее →Go использует квадратные скобки [] для параметров типа (не <> как в Java/C++). T any - параметр типа T с ограничением any (любой тип).
Подробнее →Constraint - интерфейс, определяющий, какие типы допустимы. any - любой тип, comparable - типы с ==, constraints.Ordered - типы с <. Можно создавать свои.
Подробнее →comparable constraint? 🟡 Средний
▶
comparable - встроенный constraint для типов, которые можно сравнивать через == и !=. Это все базовые типы, массивы, структуры с сравнимыми полями. Слайсы, map, функции - не comparable.
Подробнее →