struct
golang语言中,struct有着至关重要的作用,struct用来定义一个抽象的数据结构。在程序设计中,首先对各种事物进行特征分析,提炼出各个事物最主要的特征信息,然后按照这些特征信息进行归类。每一个分类,有着自己的特征信息,且对于这个类而言,这些特征信息又不可或缺,正是有了这些零散的特征信息,才能更为形象的描述这个类。在程序设计中,基于类的设计,能够更好的保证数据完整性,也能更加准确的表达一个事物。golang中可以使用struct来定义包含诸多特征信息的抽象数据类型,也可以称之为类。定义结构体的语法格式是:
type name struct{
field1 dataType
field2 dataType
...
}
定义和使用结构体
定义结构体使用type和struct关键字组合完成。结构体中字段的作用域与字段的第一个字母有关,当结构体中字段第一个字母是大写时,能够在任何地方访问,如果结构体字段第一个字母不是大写,则只能在同一个包中被访问。下边这个示例,创建一个学生基本信息结构体,并对这个结构体进行初始化操作:
package main
import (
"fmt"
)
// 学生基础信息
type Student struct {
// 学号
Id int
// 学生姓名
Name string
// 学生年龄
Age int
// 手机号
Mobile int
// 专业
Major string
}
func main() {
// 创建Student指针类型变量
s1 :=