go - ` {…}` 是什么意思?

标签 go

这个问题在这里已经有了答案:





What is the meaning of "...Type" in Go?

(1 个回答)


2年前关闭。




通常,在许多地方的许多 go 存储库中,当生成错误响应时,我看到if error != nil {…}{…} 是什么意思在这里的意思。

最佳答案

在这种情况下,'{...}' 并不是真正的 Golang 语法结构,而只是使用省略号来表示“在此 {} block 中,您应该做一些事情来处理错误”。它只是主观代码的占位符,以在您的用例中有意义的方式处理错误。人们在文档中这样做是为了保持示例不被错误处理逻辑弄乱,但仍然强调库的正确使用,包括错误处理。

为了完整起见,Golang 中还有其他地方 ...其实有着特殊的意义。这些地方是:

  • 作为 go 的参数命令 ...表示递归包列表通配符。 go test ./...将测试全部 在目录 './' 和任何级别的子目录中找到的 golang 包
  • 数组字面量 arr := [...]string{"foo", "bar"}将替换 ...数组字面量中的项目数,此处为 2。如果在某个时候添加“baz”,则不必更新 [] 中的数字。
  • 可变函数参数 func foo(args ...int) - 见 here .
  • 将 slice 传递给可变参数函数时,您可以通过添加 ... 来解开它。并且 slice 的每个元素都将作为附加参数传递。见 sum(nums...)在上面链接的示例中。
  • 关于go - ` {…}` 是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61470919/

    相关文章:

    go - "make"单向 channel 是否有目的?

    unit-testing - 在 go 中测试连接的正确方法

    go - 如何在 macOS 上的 logrus/lumberjack 中自动重新创建日志文件

    regex - guid 的正则表达式

    go - 主.go :9: use of package str without selector

    dictionary - Go:从 map 弹出

    Go - 多次按相同顺序遍历 map

    JSON 嵌套动态结构 Go 解码

    parsing - 使用 yacc 的模态解析器

    go - 如何设置用于 HTTP 请求的 IP?