GoLang - const 與關鍵字 iota 介紹
在這裡,主要針對 const 與 iota 的功能進行介紹,首先先針對 const 分組部分特性進行說明,在延伸介紹 iota 的功能。
在宣告 const 採用分組方式宣告時,第一個常數可以用於預設值,假設他的值為 0 ,則在同一分組,其他常數預設會用前一個常數值。
以下方為例:
package main
import "fmt"
const (
a = 9
b
c
d
)
func main() {
fmt.Println(a, b, c, d)
}
輸出:
9 9 9 9
Go 的 iota 關鍵字,它預設值會是 0,每次當 const 分組陸續呼叫宣告時,就會加 1,直到遇到下一個 const 宣告 iota 時,才會重置為 0。
如果常數宣告忽略值時,就會預設採用前一個值。
在下面我們做一個例子:
package main
import "fmt"
//宣告 const 分組時,用 iota 賦予值,籲社會從 0 開始,並且陸續+1
const (
a = iota
b = iota
c //忽略值時,會採用前一個值
d
)
//重新宣告一個 const 時,iota 會重置為0
const e = iota
const (
f = iota
g
h
)
func main() {
fmt.Println(a, b, c, d, e, f, g, h)
}
輸出結果
0 1 2 3 0 0 1 2