Junior — Senior
95
Как функция append меняет срезы и ссылки
任务条件
Необходимо предсказать, какие данные будут выведены программой, учитывая особенности работы срезов, указателей и возможного копирования при вызове append.
type account struct {
value int
}
func main() {
listA := make([]account, 0, 2)
listA = append(listA, account{})
listA = append(listA, account{})
listB := append(listA, account{})
ptr := &listB[0]
ptr.value = 100
fmt.Println(listA, listB)
listA = append(listB, account{})
ptr.value += 100
fmt.Println(listA, listB)
}