iota
的无规律用法。
iota
标识符会针对每个常量声明重置,并针对每个常量规范自动递增。
在一个常量规范内,标识符会保留其值。 显式引用 iota
不会重置计数器。
有关详情,请参阅 Go 规范中的 Iota。
如果两个常量规范具有文本相同的表达式列表,其中至少包含一个对 iota
的引用,并且两个常量规范之间只有常量规范,而没有表达式列表,则会触发此检查。
考虑省略冗余的表达式列表,或者每次都写出表达式列表。
示例:
const (
a = iota // 0
b // 1
c = iota // 2
)
由于 c
的定义中的 iota
冗余,触发检查。
示例:
const (
a, aa = iota, iota // 0, 0
b, bb // 1, 1
c, cc = iota + 40, iota // 42, 2
)
不会触发检查,因为没有一个表达式列表是冗余的。