1const a int = 100
2const b int = a + 10
3
4func main() {
5    fmt.Println(a + b)
6}
1type myInt int
2
3const a myInt = 100
4const b int = a + 10 // 编译报错:cannot use a + 10 (constant 110 of type myInt) as int value in constant 
5const b int = int(a) + 10  // ok
1type myInt int
2const a myInt = 100
3// 无类型常量,可以编译
4const n = 7
5const b myInt = a + n
1// 枚举
2const (
3    MONDAY = 1
4    TUESDAY = 2
5    WEDNESDAY = 3
6)
1const (
2    MONDAY = 1
3    TUESDAY
4    WEDNESDAY
5)
1const (
2    MONDAY = 1 + iota
3    TUESDAY
4    WEDNESDAY
5)
1const (
2    MONDAY = 1 + 0
3    TUESDAY = 1 + 1
4    WEDNESDAY = 1 + 2
5)
1const (
2    MONDAY = 1 + iota
3    - // iota == 1被跳过了
4    TUESDAY // 3
5    WEDNESDAY // 4
6)
1const (
2    MONDAY = 1 + iota + iota + iota // 这三个iota都是0
3    - // iota == 1被跳过了
4    TUESDAY // 3
5    WEDNESDAY // 4
6)
1const (
2    SUNDAY = 1 + iota
3    MONDAY
4    TUESDAY
5    WEDNESDAY
6)