go结构体创建的四种方法
1.取结构体的地址实例化 p3 := &person{} fmt.Printf("%T\n", p3) //*main.person fmt.Printf("p3=%#v\n", p3) //p3=&main.person{name:"", city:"", age:0} p3.name = "博客" p3.age = 30 p3.city = "成都" fmt.Printf("p3=%#v\n", p3) //p3=&main.person{name:"博客", city:"成都", age:30} 2.结构体初始化 type person struct { name string city string age int8 } func main() { var p4 person fmt.Printf("p4=%#v\n", p4) //p4=main.person{name:"", city:"", age:0} } 3.使用键值对初始化 //使用键值对对结构体进行初始化时,键对应结构体的字段,值对应该字段的初始值。 p5 := person{ name: "pprof.cn", city: "北京", age: 18, } fmt.Printf("p5=%#v\n", p5) //p5=main.person{name:"pprof.cn", city:"北京", age:18} 4.使用值的列表初始化 //初始化结构体的时候可以简写,也就是初始化的时候不写键,直接写值: p8 := &person{ "pprof.cn", "北京", 18, } fmt.Printf("p8=%#v\n", p8) //p8=&main.person{name:"pprof.cn", city:"北京", age:18}