У меня есть следующий код, который вызывает странный результат.Я не могу понять, почему:
func main() {
var s = []int{2, 3}
var s1 = append(s, 4)
var a = append(s1, 5)
var b = append(s1, 6)
fmt.Println(s)
fmt.Println(s1)
fmt.Println(a)
fmt.Println(b)
}
Это приводит к:
[2 3]
[2 3 4]
[2 3 4 6]
[2 3 4 6]
Мой вопрос: почему a не [2 3 4 5], а [2 3 4 6]?Я знаю, что я могу добавить изменения, но как.Это ошибка, потому что я никогда не менял напрямую и, очевидно, я не хочу, чтобы это произошло?