Ответ
Пустой слайс имеет len=0 и cap=0. При добавлении 10 элементов через append:
var s []int
s = append(s, make([]int, 10)...)
После этого:
len=10(количество элементов)capбудет >=10 (точное значение зависит от реализации Go, обычно удваивается при переаллокации)
Если добавить поэлементно в цикле:
var s []int
for i := 0; i < 10; i++ {
s = append(s, i)
}
Cap может расти постепенно (например, 0→1→2→4→8→16).