合规国际互联网加速 OSASE为企业客户提供高速稳定SD-WAN国际加速解决方案。 广告
## 一、定义 ![](https://img.kancloud.cn/e2/ef/e2efb247e2520c0c678ad085ffe1e16b_552x122.png) ## 二、实例 ~~~ package main import "fmt" // 结构体 type User struct { Id int Name string Sex byte Age int addr string } func main() { // 1、顺序初始化 var s1 User = User{Id:1,Name: "aa",Sex: 'd',Age: 2,addr: "llll"} fmt.Println(s1) s2 := User{Id:2,Name: "bb",Sex: 'b',Age: 22,addr: "bbbbb"} fmt.Println(s2) // 2、结构体作为指针变量初始化 var s3 *User = &User{Id:3,Name: "cc",Sex: 'c',Age: 22,addr: "cccccccc"} var s4 = &User{Id:4,Name: "dd",Sex: 'd',Age: 22,addr: "dddddddddddddd"} fmt.Println(s3) fmt.Println(s4) // 指针取值 fmt.Println((*s3).Id) fmt.Println(s3.Id) // 会先判断传的是值还是指针类型,如果是指针类型,go的内部会将 s3.Id 替换成 (*s3).Id } ~~~