4.3 常量
...大约 1 分钟
4.3 常量
使用
const定义存储不会改变的数据
数据类型只能为:布尔型、数字型、字符串
格式:
const indetifier [type] = value- 显式类型定义:
const str string = "A" - 隐式类型定义:
const Pi = 3.14 
- 显式类型定义:
 常量值必须是编译期可确定的
4.3.1 赋值
const a, b, c = 1, "2", 3
const (
	q, w, e = 1, 2, 3
    z = 0
)
// \ 用于连接
const Ln2 = 0.693147180559945309417232121458\
			176568075500134360255254120680009
4.3.2 枚举
const (
	Unkown = 0
    Female = 1
    Male = 2
)
iota
iota 默认为 0,在新的一行被使用时自动加 1,没有赋值的常量使用上一行的表达式。
// 赋值一个常量时,之后没赋值的常量都会应用上一行的赋值表达式
const (
	a = iota  // a = 0
	b         // b = 1
	c         // c = 2
	d = 5     // d = 5   
	e         // e = 5
)
// 赋值两个常量,iota 只会增长一次,而不会因为使用了两次就增长两次
const (
	Apple, Banana = iota + 1, iota + 2 // Apple=1 Banana=2
	Cherimoya, Durian                  // Cherimoya=2 Durian=3
	Elderberry, Fig                    // Elderberry=3, Fig=4
)
// 使用 iota 结合 位运算 表示资源状态的使用案例
const (
	Open = 1 << iota  // 0001
	Close             // 0010
	Pending           // 0100
)
const (
	_           = iota             // 使用 _ 忽略不需要的 iota
	KB = 1 << (10 * iota)          // 1 << (10*1)
	MB                             // 1 << (10*2)
	GB                             // 1 << (10*3)
	TB                             // 1 << (10*4)
	PB                             // 1 << (10*5)
	EB                             // 1 << (10*6)
	ZB                             // 1 << (10*7)
	YB                             // 1 << (10*8)
)
 Powered by  Waline  v2.15.2
