首页 > 技术文章 > Go基础之iota

zhaocl 2018-01-17 18:27 原文

iota与true、false被定义为预定义常量

iota又比较特殊,其他的常量在编译期间就确定了值,但是iota的值可以被编译器修改

代码示例:

package main

import "fmt"

func main()  {
	const (
		a = iota
		b	
		c
	)
	const (
		u     = iota*2
		v     = iota*4
		w int = iota*6
	)
	fmt.Println(a,b,c)
	fmt.Println(u,v,w)
}

说明:

1、如果两个const的赋值语句的表达式是一样的,那么可以省略后一个赋值表达式

2、iota在每个const出现之时被重置为0

推荐阅读