返回介绍

短变量声明

发布于 2024-10-12 12:51:50 字数 866 浏览 0 评论 0 收藏 0

短变量声明的语法:

ShortVarDecl = IdentifierList ":=" ExpressionList .

它比正常使用初始化表达式进行变量声明的方式要短,而且不指定类型:

"var" IdentifierList = ExpressionList .
i, j := 0, 10
f := func() int { return 7 }
ch := make(chan int)
r, w := os.Pipe(fd)  // os.Pipe() 返回两个值
_, y, _ := coord(p)  // coord() 返回三个值,我们只关注 y

和常规变量声明不同,即使之前在相同代码块中声明过的变量,也可以在短变量重新声明相同类型的变量,并且保证至少会有一个新的非空变量。总之,只应该在多变量短声明的时候重新声明变量,重新声明并不会使用新的变量,而是给变量分配新值。

field1, offset := nextField(str, 0)
field2, offset := nextField(str, offset)  // 重新声明 offset
a, a := 1, 2                              // 非法:声明了 a 两次并且没有新的变量

短变量声明只能在函数中使用,例如在 ifforswitch 语句的上下文中声明临时变量。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文