首页 > 后端开发 > Golang > 为什么在 Go 的 For 循环初始化中不能使用 var 声明变量?

为什么在 Go 的 For 循环初始化中不能使用 var 声明变量?

Mary-Kate Olsen
发布: 2024-11-25 19:47:10
原创
526 人浏览过

Why Can't I Use `var` to Declare Variables in Go's For Loop Initialization?

For 循环初始化语句中的变量初始化

想知道为什么可以使用简写 i 在 for 循环的初始化语句中声明变量: = 0 但 var i = 0 时则不然?

Go 编程语言规范规定for 循环中的初始化语句可以包含短变量声明 (i := 0)。这是在单个语句中声明变量并分配初始值的简洁方法。但是,在此上下文中不允许使用 var 进行完整变量声明。

这种设计选择的原因可能是为了保持语言语法的简单和一致。 For 循环通常用于迭代序列,简写符号允许在循环内进行高效的变量初始化和赋值。

尽管在初始化语句中使用 var 受到限制,但还有其他方法来声明变量具有特定类型并在循环中使用它。例如,您可以在循环外声明变量:

var i int64 = 0
for ; i < 10; i++ {
  // ...
}
登录后复制

或者,您可以在初始化期间强制转换变量:

for i := int64(0); i < 10; i++ {
  // i is now of type int64
}
登录后复制

以上是为什么在 Go 的 For 循环初始化中不能使用 var 声明变量?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板