Выбор ответа Middle Типы и нулевые значения обновлено

Какой тип не может быть ключом мапы

Вопрос

Какой из типов нельзя использовать ключом мапы?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: struct{ Tags []string }. Ключ мапы должен быть сравнимым через ==.

Варианты ответа

  1. [3]string
  2. struct{ X, Y int; Name string }
  3. *User с полями-слайсами
  4. struct{ Tags []string }правильный ответ

Разбор

Ключ мапы должен быть сравнимым через ==. Слайс несравним, поэтому и структура со слайсом несравнима: ошибка компиляции. Массив фиксированной длины из сравнимых элементов ([3]string) сравним. Структура из int и string сравнима. Указатель сравним по адресу, и что лежит в полях User, не важно.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.

Термины по теме