슬라이스의 Append() 동작 이해
Go에서 슬라이스 작업을 할 때, add() 함수가 슬라이스와 상호 작용하는 방식을 이해하는 것이 중요합니다. 값으로 전달된 슬라이스.
다음 코드 조각을 고려하세요.
func main() { slice := make([]int, 10, 10) slice[0] = 0 slice[1] = 1 slice1 := slice slice1[0] = 10000 fmt.Println(slice) slice1 = append(slice1, 100) slice1[0] = 20000 fmt.Println(slice) }
이 예에서는 두 개의 슬라이스(slice 및 Slice1)가 생성되며, 처음에는 Slice1이 Slice와 동일한 배열을 가리킵니다. . 그러나 첫 번째 추가() 호출 이후에는 다른 배열을 가리키는 새 슬라이스 값이 슬라이스1에 할당됩니다. 이 할당으로 인해 Slice1의 동작은 슬라이스와 독립적이 됩니다.
설명:
결과 :
슬라이스 헤더와 그 내부를 이해하려면 다음 리소스를 참조하세요. :
위 내용은 Go의 `append()` 함수는 값이 전달될 때 슬라이스 동작에 어떤 영향을 줍니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!