package main import ( "encoding/json" "errors" "fmt" "reflect" "strconv" "time" ) type User struct { a string b string } type S struct { User Name string Age int Address string } //结构体转map方法1 fun…
目录: struct声明和定义 struct的内存布局以及构造函数 匿名字段和struct嵌套 struct与tag应用 struct声明和定义 1.Go中面向对象是通过struct来实现的, struct是用户自定义的类型. type User struct { Username string Sex string Age int AvatarUrl string } 注意:type是⽤用来定义一种类型 2.struct初始化⽅方法1 var user User user.Age = 18 u…
二叉树实现.及遍历 二叉树定义 type Student struct { Name string left* Student right* Student } 如果每个节点有两个指针分别用来指向左子树和右子树,我们把这样的结构叫做二叉树 package main import "fmt" type Student struct { Name string Age int Score float32 left *Student right *Student } func trans(r…
这两天在看reflect这个包在Docker中的使用时,遇到了各种问题,最后虽然知道怎么用了. 但是对于这块的原理还不是太懂,于是把"THE WAY TO GO"中关键的几章看了下. 继续坚持往下写,争取能说明白. 源码 还是先看Docker中源码, docker/api/client/cli.go type DockerCli struct { proto string addr string configFile *registry.ConfigFile in io.ReadClo…
指针 定义:将地址形象化的称为“指针”.将地址形象化的称为“指针”.意思是通过它能找到以它为地址的内存单元.一个指针变量指向了一个值的内存地址.意思是通过它能找到以它为地址的内存单元.一个指针变量指向了一个值的内存地址. 注意:Go语言支持指针类型*T,指针的指针**T,以及包含包名前缀的*package.T. 1.指针声明 a) 声明一个int类型指针 var ip *int b)声明一个string类型指针 var sp *string c) 通过 := 语法来定义指针 var str st…