在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
指针 var ip *int b)声明一个string类型指针 var sp *string c) 通过 := 语法来定义指针 var str string = "oldboy" sp := &str d)声明一个int值的指针的指针变量(即,指针的指针) var p **int e) 声明一个time.Time值的指针变量 var t *time.Time
注意: a)Go语言是不允许两个指针类型进行转换的。 b)unsafe.Pointer类型用于表示任意类型的指针。有4个特殊的只能用于Pointer类型的操作: 1、 任意类型的指针可以转换为一个Pointer类型值 2、 一个Pointer类型值可以转换为任意类型的指针 3、 一个uintptr类型值可以转换为一个Pointer类型值 4、 一个Pointer类型值可以转换为一个uintptr类型值
type bigint int64
type smallint int8
b) 定义一个新的数据类型,结构体中有多个成员 type oldboy struct { Linux string Python string Golang string } c) 定义一个新的数据类型,指向结构体的指针 type Linux string type oldboy struct { *Linux }
type oldboy struct { Linux string Python string Golang string } 2、初始化 var ordered = oldboy{"linux", "python", "golang"} // 有序初始化 var disordered = oldboy{Golang: "golang"} // 无序初始化
type oldboy struct { int string } 2、初始化 two := new(oldboy) //同 var two *oldboy = new(oldboy) //指针变量 three := oldboy{1, "three"} four := oldboy{} five := &oldboy{} //指针变量 six := &oldboy{2, "six"} //同 var six *oldboy = &oldboy{2, "six"} //指针变量
type Person struct { name string age int addr string } type Employee struct { Person //匿名字段 salary int int //用内置类型作为匿名字段 addr string //类似于重载 } 2、初始化 em1 := Employee{ Person{"oldboy", 18, "北京"}, 10, 100, "首都", }
type User struct { UserId int UserName string } type UserTag struct { UserId int `json:"user_id" bson:"user_id"` UserName string `json:"user_name" bson:"user_name"` } b)初始化 user := &User{UserId: 1, UserName: "oldboy"} json_user, _ := json.Marshal(user) fmt.Printf("struct User echo : %v\n", string(json_user)) user_tag := &UserTag{UserId: 1, UserName: "oldboy"} json_user_tag, _ := json.Marshal(user_tag)
|
请发表评论