Golang 之区分类型别名与类型定义

一、类型别名

type byte=uint8
type rune=int32

二、区别类型别名和类型定义

// 自定义类型myInt,基本类型是int
type myInt int
//将 int 类型取一个别名intAlias
type intAlias = int
func main() {
 var a myInt  //声明 a变量为自定义 myInt 类型
 fmt.Printf("a Type: %T, value: %d\n", a, a)  // 输出 a 的类型和默认值
 var b intAlias  //声明 b变量为 intAlias 类型
 fmt.Printf("b Type: %T, value: %d\n", b, b) // 输出 b 的类型和默认值
}

== 输出结果 ==

a Type: main.myInt, value: 0

b Type: int, value: 0

从上面的结果我们可以看出:

a 的类型是  main.myInt,表示main 包下定义的myInt 类型

b  的类型是 int 。intAlias 类型只会在代码中存在,编译完成时,不会有 intAlias 类型

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容