结构体定义
概念说明
结构体(struct)用于把多个不同类型的字段组织成一个整体。
它常用于描述“一个对象”的完整信息,比如学生、订单、商品等。
可以先把它理解成“数据模板”:先定义模板,再创建具体数据。
语法/规则
- 使用
type 名称 struct { ... }定义结构体类型。 - 结构体字段由“字段名 + 类型”组成,字段名首字母大写表示可导出。
- 结构体实例可以通过字面量初始化。
- 字段可通过
实例.字段读取和修改。 - 可以为结构体绑定方法,语法是
func (接收者 结构体类型) 方法名(...)。 func (s Student) PrintInfo()中,(s Student)是接收者,PrintInfo是方法名。
语法模板
| |
定义、初始化与字段修改示例
先看最容易卡住的一行:
func (s Student) PrintInfo()(s Student):接收者,表示这个方法属于Student,s是当前实例的临时名字。PrintInfo:方法名,调用时写student.PrintInfo()。
| |
输出结果:
| |
常见错误
- 字段名和类型顺序写反(写成
string Name),会导致语法错误。 - 把
(s Student)当成普通函数参数,误写成PrintInfo(student)这种调用方式。 - 初始化时字段名写错或漏写逗号,导致编译失败。