为什么在使用 any 而不是 interface{} 时出现

当尝试使用any而不是interface{}Go 1.18 工具链时,您会收到错误:

undeclared name: any (requires version go1.18 or later)

为什么会这样,你如何解决它?在 Go 1.18any引入。


精慕HU
浏览 196回答 1
1回答

哈士奇WWW

如果您的 go.mod 文件列出go低于 1.18 的版本,您将收到此错误,例如:module example.com/foo go 1.17将 go.mod 更改为 readgo 1.18应该可以解决错误。通常,每个模块的 go.mod 文件控制编译该模块时使用的 Go 语言的版本,这允许每个模块作者按照自己的节奏选择加入,从而更逐步地采用新的语言更改。这在Go 语言更改设计文档中有更详细的描述。操场上的此错误示例,包括您可以编辑的 go.mod 文件:https ://go.dev/play/p/au6TtTvNsRy
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go