先看一个例子
package mainimport ("fmt")const (A = iotaBCD = 8EF = iotaG)const (A1 = iotaA2)func main() {fmt.Println(A)fmt.Println(B)fmt.Println(C)fmt.Println(D)fmt.Println(E)fmt.Println(F)fmt.Println(G)fmt.Println("------------------")fmt.Println(A1)fmt.Println(A2)}
打印结果:
0
1
2
8
8
5
6
—————————
0
1
首先说递增:
iota的递增是在const作用域里进行递增的,是从0开始递增的
第11行我将D的值改为8后,E没有写,但是默认他的表达式和D是一样的,所以E的值也是8
F的值为5,那是因为iota是每隔一行递增。所以递增到F为5
iota遇到const会重置为0
