17、Go语言结构体与方法详解

Go语言结构体与方法全面解析

Go语言结构体与方法详解

一、结构体基础

1.1 结构体概述

Go语言支持用户自定义类型,以别名类型或结构体的形式存在。结构体用于表示现实世界的实体及其属性,是一种复合类型,可将多个不同类型和值的数据组合在一起,当作一个整体来访问。结构体是值类型,可使用 new 函数来创建。

构成结构体类型的数据组件称为字段,每个字段都有类型和名称,且在结构体中字段名必须唯一。在早期软件工程文献中,该概念被称为抽象数据类型(ADT),在早期语言如Cobol中称为记录,在C系列语言中也称为结构体,在面向对象语言中可看作无方法的轻量级类。由于Go语言没有类的概念,结构体在Go中具有更重要的地位。

1.2 结构体定义

结构体定义的一般格式如下:

type identifier struct {
    field1 type1
    field2 type2
    …
}

例如 type T struct { a, b int } 也是合法的语法,更适合简单结构体。如果字段在代码中从未使用,可以命名为 _

字段可以是任何类型,甚至可以是结构体本身、函数或接口。因为结构体是值类型,所以可以声明结构体类型的变量并为其字段赋值,示例如下:

var s T
s.a = 5
s.b = 8

数组可以看作是一种结构体,但字段是通过

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值