Middle+
21
Как устроен слайс в Go?
Компании, где спрашивали
Ответ от нейросети
sobes.tech AI
Слайс в Go — это структура данных, которая представляет собой динамический массив с возможностью изменения размера. Он устроен как указатель на массив, длина и ёмкость:
- Указатель — указывает на первый элемент массива, который лежит в памяти.
- Длина (len) — количество элементов, доступных для чтения/записи.
- Ёмкость (cap) — максимальное количество элементов, которые можно хранить без выделения новой памяти.
Когда слайс расширяется за пределы ёмкости, создаётся новый массив большего размера, и данные копируются туда.
Пример:
s := make([]int, 3, 5) // len=3, cap=5
s = append(s, 10) // теперь len=4, cap=5
Таким образом, слайс — это удобный и эффективный способ работать с динамическими массивами в Go.