Можно ли создать константу типа map или slice?

В Go нельзя объявить константу типа map или slice. const предназначен для константных значений, а не для изменяемых коллекций.

Короткий ответ

Что ответить на собеседовании

В Go нельзя объявить константу типа map или slice. const предназначен для константных значений, а не для изменяемых коллекций.

Подробный разбор

Ответ с пояснениями

В Go нельзя объявить константу типа map или slice. const предназначен для константных значений, а не для изменяемых коллекций.

const limit = 10
var values = []int{1, 2, 3}
var labels = map[string]string{"a": "A"}

var на уровне пакета не делает коллекцию неизменяемой. Если внешнему коду нужны только чтение и фиксированное содержимое, скройте данные за функциями доступа и возвращайте копии там, где иначе возможна модификация. У языка нет встроенного const-модификатора для всего графа объектов.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее