美文网首页
Golang 之区分类型别名与类型定义

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

作者: Caesar_emperor | 来源:发表于2019-08-11 11:06 被阅读0次

    一、类型别名

    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 类型

    相关文章

      网友评论

          本文标题:Golang 之区分类型别名与类型定义

          本文链接:https://www.haomeiwen.com/subject/tuphjctx.html