Что делает функция append в Go?

append добавляет элементы к слайсу и возвращает новый заголовок слайса. Если capacity хватает, используется прежний массив; иначе выделяется другой массив и элементы копируются.

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

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

append добавляет элементы к слайсу и возвращает новый заголовок слайса. Если capacity хватает, используется прежний массив; иначе выделяется другой массив и элементы копируются.

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

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

append добавляет элементы к слайсу и возвращает новый заголовок слайса. Если capacity хватает, используется прежний массив; иначе выделяется другой массив и элементы копируются.

Результат нужно сохранить: s = append(s, x). Изменение длины не распространяется автоматически на другие копии заголовка. Однако запись в общий backing array может быть видна другим слайсам. Можно добавлять другой слайс через append(s, values...). Не полагайтесь на точный коэффициент роста capacity — он не является контрактом языка.

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

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

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

Подробнее