类型别名与自定义类型
# 自定义类型
Go 语言中有一些基本数据类型,比如:int
、string
、bool
等,这些都是官方给直接定义好了的。当然,除了这些已经定义好了的数据类型,Go 语言也支持自定义数据类型,例如:
type myInt int
1
上面就是定义了一个myInt
的数据类型,它具有 int 的特性,比如:
package main
import "fmt"
// 自定义一个类型
type myInt int
func main() {
// 定义一个变量a,是myInt类型
var a myInt
a = 10
fmt.Println(a)
}
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
# 类型别名
类型别名,顾名思义就是为某个类型添加一个别名,也就是起小名的意思,类似于我们在 Linux 中为某个命令用alias
起别名一样。
在 Go 语言中起别名的语法如下:
type typeAlias = type
1
比如:
type stringAlias = string
1
上面就是为string
起了一个别名叫stringAlias
。
自定义类型是我们自己新定义一个类型,它与其他类型没有任何关系,即使它们的功能一样,而且自定义类型只在代码中存在,编译完就没有这个类型了。而类型别名仅仅是为某个类型起了一个名字,就算这个别名不存在了,这个类型本身是存在的。
上次更新: 2025/07/18, 11:04:43