在Go語言中,有多種方法可以初始化結(jié)構體。以下是一些常見的初始化方式:
type Person struct {
Name string
Age int
}
func main() {
p := Person{Name: "Alice", Age: 30}
fmt.Println(p)
}
func main() {
p := Person{"Alice", 30}
fmt.Println(p)
}
func main() {
p := &Person{Name: "Alice", Age: 30}
fmt.Println(p)
}
func main() {
p := &Person{Name: "Alice", Age: 30}
fmt.Println(p)
}
make
函數(shù)初始化切片、映射和通道:func main() {
s := make([]int, 5) // 初始化長度為5的整數(shù)切片
m := make(map[string]int) // 初始化空的字符串到整數(shù)的映射
c := make(chan int, 5) // 初始化長度為5的整數(shù)通道
}
func main() {
p := Person{
Name: "Alice",
Age: 30,
Address: struct {
City string
State string
}{
City: "New York",
State: "NY",
},
}
fmt.Println(p)
}
這些方法可以根據(jù)實際需求進行組合使用,以滿足不同的初始化場景。