标签:标识 ext 没有 code var 表头 field highlight mic
struct的使用:
1. 用来自定义复杂数据结构
2. struct里面可以包含多个字段(属性)
3. struct类型可以定义方法,注意和函数的区分
4. struct类型是值类型
5. struct类型可以嵌套
6. Go语言没有class类型,只有struct类型
struct声明:
type 标识符 struct { field1 type field2 type } 例如: type Student struct { Name string Age int Score int }
struct 中字段访问:和其他语言一样,使用点
var stu Student stu.Name = “tony” stu.Age = 18 stu.Score=20 fmt.Printf(“name=%s age=%d score=%d”, stu.Name, stu.Age, stu.Score)
struct定义的三种形式:
var stu Student var stu *Student = new (Student) var stu *Student = &Student{}
其中b和c返回的都是指向结构体的指针,访问形式如下
stu.Name、stu.Age和stu.Score或者 (*stu).Name、(*stu).Age等
struct的内存布局:struct中的所有字段在内存是连续的,布局如下:
struct链表:
链表定义:
type Student struct { Name string Next *Student }
每个节点包含下一个节点的地址,这样把所有的节点串起来了,通常把 链表中的第一个节点叫做链表头
标签:标识 ext 没有 code var 表头 field highlight mic
原文地址:https://www.cnblogs.com/weidaijie/p/11447961.html