在 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()
append() 函数是 Go 中处理切片的核心。它采用切片作为其第一个参数,并将一个或多个元素作为其其余参数。它将指定的元素附加到切片并返回带有附加元素的新切片。
进一步阅读
有关切片和append()函数的更多详细信息,参考Go规范:https://go.dev/ref/spec#Appending_and_copying_slices
以上是如何在 Go 中实现可调整大小的数组?的详细内容。更多信息请关注PHP中文网其他相关文章!