go - 解释这个 Go 语句

标签 go

我发现这是在一本 Go 书中,但在该语言的语法中找不到。谁能解释一下?它本质上是某种“标签”吗?

return (<-reply).(int)

最佳答案

您在该语句中进行了三件事,它们是不同的语言功能,它们一起工作。

  • return从函数返回一个值
  • <-reply从名为 reply 的 channel 中读取一个值
  • var.(type)断言接口(interface)包含该类型。

所以将它们放在一起,您正在从回复 channel 读取接口(interface)值,断言该值是一个整数,然后返回该整数值。

关于go - 解释这个 Go 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35468166/

相关文章:

go - 为什么http.HandleFunc对一个请求执行两次?

Go: slice 变量/参数的命名约定?

go - 为什么在 Go 类型开关中声明一个单独的变量?

oop - 需要帮助理解 Go 中的 `map[String]type` 行为

go - 以人类可读格式解码 X509 证书 - Golang

go - 如何在带有身份验证 header 的浏览器中打开 URL?

json - 在 Go 中通过嵌入式结构实现 json 编码器

html - 显示来自 Golang Controller 的数据

go - 从 golang 程序中执行另一个 go 程序

go - PubSub 不确认消息