Go语言的新类型声明和类型别名的区别

简介

区分新类型声明和类型别名的不同之处,虽然简单,却也是容易忽视的地方,这里做个简单介绍。

定义新类型

type关键字用来声明一个新类型:

type 类型名称 底层类型

新类型和底层类型是不可以互相赋值的,即新类型和底层类型是两种不同的类型。

类型别名(定义类型的新名字)

type 新名称 = 底层类型

这条语句是给底层类型起了个新的名字,他们是等价类型,可以认为是为底层类型定义了个别名。
这俩类型定义的变量可以互相赋值。
其中
rune是int32的等价类型;
byte是uint8的等价类型。
这是源码中byte和rune的定义:(src/builtin/builtin.go)

©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付 9.90元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值