注意:顺序初始化,每个成员必须初始化,在初始化时,值的顺序与结构体成员的顺序保持一致。

结构体定义完成后,结构体成员的使用。

普通变量

type Student struct {

id int

name string

sex byte

age int

addr string

}

func main() {

//1、顺序初始化,必须每个成员都初始化

var s1 Student = Student{1, "Luffy", 'm', 18, "EastSea"}

s2 := Student{2, "Sanji", 'f', 20, "EastSea"}

//s3 := Student{2, "Nami", 'm', 20} //err, too few values in struct initializer

//2、指定初始化某个成员,没有初始化的成员为零值

s4 := Student{id: 2, name: "Zoro"}

}

指针变量

type Student struct {

id int

name string

sex byte

age int

addr string

}

func main() {

var s5 *Student = &Student{3, "Nami", 'm', 16, "EastSea"}

s6 := &Student{4, "ro", 'm', 3, "NorthSea"}

}