说真的看到go的语法后,我还有点不习惯,感觉它的语法规则很奇怪。但或许就是这样的语法规则让它的执行速度变快?这也未可知。
在go里有变量和常量,但没有枚举。枚举可以用关键字const去模拟。
常量只能是布尔型、数字型(整数型、浮点型和复数)和字符串型。 编译器可以根据变量的值来判断类型。
go里面声明变量的方式也挺奇怪:
var valuename type
itoa,一个特殊常量,在 const关键字出现时将被重置为 0(const 内部的第一行之前),const 中每新增一行常量声明将使 iota 计数一次(iota 可理解为 const 语句块中的行索引)。
用 itoa 和const结合,可以很好地表示枚举类型。
示例:
const (
a = iota //0
c //1
d //2
)
最后,没有分号是真的不习惯。