🟡 Средний · 2 очк. Map
Чем map[string]*User лучше map[string]User для модификации значений?
A Ничем, разницы нет
B Указатель позволяет менять поля на месте
C map со значениями быстрее
D Указатель расходует меньше памяти
Объяснение вопроса

В map[string]User нельзя изменить поле элемента напрямую: m[k].Name = "x" не компилируется (значения в map не адресуемы). В map[string]*User значение - указатель, поэтому m[k].Name = "x" допустимо и меняет объект по ссылке. Компромисс: указатели увеличивают нагрузку на GC, но позволяют изменять "на месте" без копирования структуры.

m := map[string]*User{"alice": {Name: "Alice"}}
m["alice"].Name = "A"  // OK
🧠Квиз 🏆Лидеры 🎯Собесед. 📖Вопросы 📚База зн.