For 循环初始化语句中的变量声明
在 Go 中,for 循环的语法允许在初始化中声明变量陈述。不过这个声明必须遵循特定的格式。
问题来了,为什么在初始化语句中不能声明一个特定类型的变量,比如 for var i int64 = 0;我
for 循环的语言规范解释说 init 语句只能是短变量声明,它是 i := 0 形式的赋值。它不能是使用 var 的完整变量声明。
此限制可能源于对语言简单性的渴望。通过将初始化语句限制为简短的变量声明,语法变得更加简洁且不易混淆。
但是,值得注意的是,有一种解决方法可以在初始化语句中声明具有特定类型的变量。这可以使用显式类型转换来完成:
for i := int64(0); i < 10; i++ { // i here is of type int64 }
在此示例中,变量 i 在初始化语句中显式转换为 int64 类型。
以上是为什么我无法在 Go For 循环的初始化语句中声明类型变量?的详细内容。更多信息请关注PHP中文网其他相关文章!