一、常量

golang中的常量和其他语言里的常量大多相同,必须在编译期有确定的值。

const x, y int = 1, 2
const Pi = 3.14
const str = "Hello World"

也可以使用常量组的形式来声明:

const (
    a = 1
    b = "Hello World"
    c = false
)

二、枚举

golang中的枚举使用iota关键字来实现,从0开始自增枚举。

const (
    Sunday = iota    //0
    Monday            //1
    Tuesday            //2
)

同一个常量组中,可以提供多个iota,各自增长。必要时也可以使用 _ 字符来充当占位符。

const (
    _, _ = iota, iota
    Monday, KB = iota, 1 << (10 * iota)
    Tuesda, MB
)

如果iota被打断,需要手动显式恢复,但值依旧增加。

const (
    A = iota     // 0
    B             // 1
    C = "c"     // c
    D             // c,与上一行相同。
    E = iota     // 4,显式恢复。注意计数包含了C、D两行。
    F             // 5
)
最后修改:2017 年 08 月 15 日
如果觉得我的文章对你有用,请随意赞赏