Registry: ленивая инициализация карты
Zero value структуры с полем-картой содержит nil-карту, и запись в неё паникует. Реализуйте метод Add с ленивой инициализацией (if r.Items == nil { r.Items = make(...) }) и конструктор NewRegistry, возвращающий Registry с инициализированной картой.
Показать решение
GolangРешение
func (r *Registry) Add(k string, v int) {
if r.Items == nil {
r.Items = make(map[string]int)
}
r.Items[k] = v
}
func NewRegistry() *Registry {
return &Registry{Items: make(map[string]int)}
}Записаться на разбор
10 000 ₽ · 60 минут · онлайн