Go에서 크기 조정 가능한 배열 구현
Go로 전환하는 C 개발자라면 다음 작업에 std::Vector 클래스를 사용하는 데 익숙할 것입니다. 동적 배열. Go에서는 추가 가능한 슬라이스 데이터 구조를 사용하여 유사한 기능을 구현할 수 있습니다.
표준 접근 방식
동적 구조체 배열을 생성하려면 구조체 유형을 정의할 수 있습니다. 그런 다음 슬라이스를 사용하여 구조체의 인스턴스를 저장합니다. 슬라이스의 크기는 동적으로 조정되므로 런타임에 요소를 추가하거나 제거할 수 있습니다.
예제 코드 조각
type myStruct struct { b int c string } func main() { // Create an empty slice of myStruct a := []myStruct{} // Append elements to the slice a = append(a, myStruct{1, "hello"}) a = append(a, myStruct{2, "world"}) // Iterate over and print the slice for _, v := range a { fmt.Println(v) } }
주요 기능: 추가()
append() 함수는 Go에서 슬라이스 작업의 핵심입니다. 첫 번째 인수로 슬라이스를 사용하고 나머지 인수로 하나 이상의 요소를 사용합니다. 지정된 요소를 슬라이스에 추가하고 추가된 요소가 포함된 새 슬라이스를 반환합니다.
추가 자료
슬라이스 및 추가() 함수에 대한 자세한 내용은 , Go 사양을 참조하세요: https://go.dev/ref/spec#Appending_and_copying_slices
위 내용은 Go에서 크기 조정 가능한 배열을 어떻게 구현합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!