Go 系列教程 —— 5. 常量

guoxiaopang · 2017-12-07 07:06:56

这正好是上面一句话说的意思:无类型的常量有一个与它们相关联的默认类型,并且当且仅当一行代码需要时才提供它

其实你不用纠结这一点,只要记住:常量可以赋值给 “合适的” 类型,而不需要类型转换。

比如:

const a = 0
var b = 0

var f1 float64 = a
var f2 float64 = b

fmt.Println(f1, f2)

以上代码,f1 的赋值正常,但 f2 编译不通过。

#5
更多评论

const hello = "Hello" fmt.Printf("type %T value %v", hello, hello)

输出: type string value Hello

常量仍然没有类型怎么理解?

#1

文中提到了:

> 无类型的常量有一个与它们相关联的默认类型,并且当且仅当一行代码需要时才提供它

#2