如何在 Golang 中使用 new 关键字实例化结构体?

go programmingserver side programmingprogramming

在 Go 中,结构体是一种复合数据类型,它将零个或多个不同类型的值组合在一起。结构体可以通过多种方式创建,包括使用 new 关键字。在本文中,我们将讨论如何在 Go 中使用 new 关键字实例化结构体。

Go 中的 new 关键字是什么?

Go 中的 new 关键字是一个内置函数,它为指定类型的新值分配内存并返回指向该值的指针。分配的内存会被设置为零,这意味着新值的每个字段都将具有其零值。 new 函数接受一个参数,即要分配内存的值的类型。

Go 中使用 new 关键字实例化结构体的语法

Go 中使用 new 关键字实例化结构体的语法如下:-

var structPointer *StructType = new(StructType)

其中,StructType 是要实例化的结构体类型的名称,structPointer 是指向新结构体值的指针。

Go 中使用 new 关键字实例化结构体的示例

以下示例演示了如何在 Go 中使用 new 关键字实例化结构体:-

package main

import "fmt"

type Person struct {
   name string
   age  int
}

func main() {
   personPointer := new(Person)
   personPointer.name = "John Doe"
   personPointer.age = 30

   fmt.Printf("Name: %s\n", personPointer.name)
   fmt.Printf("Age: %d\n", personPointer.age)
}

输出

Name: John Doe
Age: 30

在此示例中,我们定义了一个包含两个字段的 Person 结构体:name 和 age。然后,我们使用 new 关键字为新的 Person 值分配内存并返回指向它的指针。最后,我们使用 fmt.Println 打印新 Person 值的内存地址。

结论

在本文中,我们讨论了如何在 Go 中使用 new 关键字实例化结构体。new 关键字是一个内置函数,它为指定类型的新值分配内存并返回指向它的指针。我们还提供了一个示例,演示了如何使用 new 关键字为新的 Person 值分配内存。通过遵循本文概述的语法,您应该能够在 Go 中使用 new 关键字实例化结构体。


相关文章