zoukankan      html  css  js  c++  java
  • 类型别名 与 自定义类型

    类型别名:

    别名是1.9版本添加的新功能

    type TypeAlias = Type
        type byte = uint8
        type rune = int32

    自定义类型:

    在Go中有基本的数据类型,比如:string,int,bool等。还可以使用type关键字来自定义类型。

    自定义类型是定义了一个全新的类型。可以基于内置的基本类型定义,也可以通过struct定义。

    type MyInt int   将 MyInt 定义为 int 类型

     通过 type 关键字的定义,MyInt就是一种新的类型,它具有int的特性

    区别:

    类型别名与自定义类型,表面上看只有一个 = 的差别,通过代码来理解它们之间的区别。

    package main
    
    import (
        "fmt"
    )
    
    func main() {
        
        type NewInt int             // 自定义
        type MyInt = int            // 别名
    
        var a NewInt
        var b MyInt
    
        fmt.Printf("a的类型:%T 
    ",a)          // a的类型:main.NewInt
        fmt.Printf("b的类型:%T 
    ",b)          // b的类型:int
    
    }

    a的类型是 main.NewInt,表示main包下定义的NewInt类型。b的类型是int。

    MyInt类型只会在代码中存在,编译完成时并不会有MyInt类型。

  • 相关阅读:
    Spring面试,IoC和AOP的理解
    WEB打印(jsp版)
    Spring事务管理机制的实现原理-动态代理
    spring面试题
    oracle PLSQL基础学习
    oracle创建表空间
    WM_CONCAT字符超过4000的处理办法
    Oracle 数据泵使用详解
    Oracle 数据泵详解
    linux下启动oracle
  • 原文地址:https://www.cnblogs.com/yizhixiaowenzi/p/14689871.html
Copyright © 2011-2022 走看看