Go|iota

iota

iota,特殊常量,可以人为是一个可以被编译器修改的常量,iota是go语言的常量计数器

iota在const关键字出现时将被重置为0(const 内部的第一行之前),const中每新增一行常量声明将使iota计数一次(iota 可以理解为const语句模块中的索引)。

iota可以被用作枚举值:

const (
        a = iota
        b = iota
        c = iota
)

第一个iota等于0,每当iota在新的一行被使用时,它的值都会自动加1;所以a=0,b=1,c=2可以简写为如下形式:

const (
    //一组常量中,如果某个值没有初始值,默认和上一行一致
        a = iota
        b 
        c
)

例子:

package main

func main() {
    const (
        a = iota   // 0
        b          // 1
        c          // 2
        d = "test" // test iota3
        e          // test iota4
        f = 100    // 100 iota5
        g          // 100 iota6
        h = iota   // 7
        i          // 8
    )
    const (
        j = iota // 0
        k        // 1
    )
    println(a, b, c, d, e, f, g, h, i, j, k)
}
无标签
评论区
头像
文章目录