类型别名和自定义类型
# 类型别名和自定义类型
# 自定义类型
在 Go 语言中有一些基本的数据类型,如
string
、int
、浮点型、布尔等数据类型,Go 语言中可以使用type
关键字来定义自定义类型。
自定义类型是定义了一个全新的类型。我们可以基于内置的基本类型定义,也可以通过struct
定义
// 将MyInt定义为int类型
type MyInt int
1
2
2
通过type
关键字的定义,MyInt
就是一种新的类型,它具有int
的特性
var x MyInt = 100
fmt.Printf("x=%T\n", x) // x:main.MyInt
1
2
2
自定义类型是程序员根据自己的需要创造的新类型
# 类型别名
type NewInt = int
1
这个实际上本质还是原来的int
无非就是起了一个小名,别名。比如类型rune
其实就是int32
,还有byte
就是uint8
类型。
实际上就是为了方便理解而存在。
var x NewInt = 100
fmt.Printf("x=%T\n", x) // x:int
1
2
2
类型别名只在源文件中生效,编译完之后,还是会以被替换成原始的
int
类型
编辑 (opens new window)
上次更新: 2022/05/24, 23:35:53