по идее же в массив должно было добавиться 1?
Аппенд возвращает итоговый массив, а там он пропущен
вместо "_" укажи "a"
это я понимаю) мне интересно, куда девается 1, если массив один и тот же
append возвращает массив, а сам массив полученный от append не указывается в переменную "а"
он возвращает же слайс
У Донована нашел код аппенда интов вроде А это еще получается в внутренности мейка смотреть? gopl.io/ch4/append func appendInt(x []int, y int) []int { var z []int zlen := len(x) + 1 if zlen <= cap(x) { // There is room to grow. Extend the slice. z = x[:zlen] } else { // There is insufficient space. Allocate a new array. // Grow by doubling, for amortized linear complexity. zcap := zlen if zcap < 2*len(x) { zcap = 2 * len(x) } z = make([]int, zlen, zcap) copy(z, x) // a builtin function; see text } z[len(x)] = y return z }
Но у нас то вместимости хватает - новый массив появится не должен. Но исходный при этом тоже не меняется
Обсуждают сегодня