Sobes.tech
Назад к вопросам
Junior — Middle
84

Что означает свойство capacity у слайса в Go, если при его создании оно не указывается явно?

Ответ от нейросети

sobes.tech AI

В Go слайс — это структура, которая содержит указатель на массив, длину (len) и ёмкость (capacity).

Если при создании слайса capacity явно не указана, она устанавливается равной длине слайса. Capacity показывает, сколько элементов слайс может вместить без выделения новой памяти.

Например:

s := make([]int, 3) // len=3, cap=3

Здесь capacity равна 3, так как не указана отдельно.

Если capacity больше длины, то слайс можно расширять до capacity без аллокации нового массива.