常量是程序運行時,不會改變的量
go中常量的聲明方式和變量類似,有組合聲明,並行聲明,普通聲明
/**
* 定義常量
*/
const (
PI = 3.14 //這裏並沒有聲明變量類型,編譯器會自行判斷
DATEFORMAT string = "yyyy-mm-DD HH-mm-ss"
FORMAT //不提供數據類型和初始化值得常量視作和上一個常量相同(賦值表達式) 即FORMAT = "yyyy-mm-DD HH-mm-ss"
SIZEPAGE int8 = 10 //給變量指定明確的類型
)
常量的值也可以是編譯期可以確定返回值的函數的返回值,例如len、 cap、 unsafe.Sizeof
count{
a string = "abc"
b = len(a)
c = unsafe.Sizeof(b)
}
meiju
關鍵字iota定義了常量組中從0開始的自增枚舉值
//枚舉
const (
_ = iota
KB int64 = 1 << (10 * iota) //iota = 1, (1 << 10) == (1 * 1024)
MB //賦值表達式省略,同上
GB
TB
)
const (
A, B = iota, iota << 10 // 0, 0 << 10
C, D // 1, 1 << 10
)