go语言学习笔记 — 基础 — 复合数据类型 — 结构体:定义结构体
Posted Locutus
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了go语言学习笔记 — 基础 — 复合数据类型 — 结构体:定义结构体相关的知识,希望对你有一定的参考价值。
go通过自定义的方式形成新的类型,结构体是类型中带有成员的复合类型。go使用结构体和结构体成员,描述真实世界的实体和实体对应的各种属性。
go中的类型可以被实例化。使用new
或&
得到类型实例,其类型是对应结构体的指针类型。
结构体成员变量字段,有以下特性:
- 字段拥有值和类型
- 字段名必须唯一
- 字段的类型也可以是结构体,甚至是所在结构体的指针类型
1. 什么是结构体
结构体是一种复合类型,通过关键字type定义基本类型为自定义类型(结构体)后,更便于使用。
1.1 定义结构体
type 结构体类型名 struct{
字段1 字段1的类型 // 字段也可叫做结构体成员变量
字段2 字段2的类型
...
}
- 结构体类型名用于区分不同的结构体名称,同一个包内类型名不能重复
type 结构体类型名 struct{}
,表示把struct{}
定义为类型名
的自定义类型- 字段1、字段2…,表示结构体的字段名,同一个结构体中字段名不能重复
1.2 实例
平面上一个点有X、Y两个分量。定义平面点坐标结构体:
type Point struct{
X int
Y int
}
同类型的结构体字段可以写在一行。定义颜色结构体:
type Color struct{
R, G, B byte
}
以上是关于go语言学习笔记 — 基础 — 复合数据类型 — 结构体:定义结构体的主要内容,如果未能解决你的问题,请参考以下文章
go语言学习笔记 — 基础 — 复合数据类型 — 结构体:使用匿名结构体分离json数据
go语言学习笔记 — 基础 — 复合数据类型 — 结构体:如何在包中引用另外一个包的结构体?
go语言学习笔记 — 基础 — 复合数据类型 — 结构体:类型内嵌与结构体内嵌(扩展和复用)
go语言学习笔记 — 基础 — 复合数据类型 — 结构体:构造函数 — 封装结构体和类型的一系列初始化操作(封装数据)