广告
返回顶部
首页 > 资讯 > 后端开发 > GO >关键字 var 后面的下划线和接口名称是什么意思?
  • 528
分享到

关键字 var 后面的下划线和接口名称是什么意思?

2024-04-05 00:04:18 528人浏览 安东尼
摘要

在golang实战开发的过程中,我们经常会遇到一些这样那样的问题,然后要卡好半天,等问题解决了才发现原来一些细节知识点还是没有掌握好。今天编程网就整理分享《关键字 var 后面的下划线和接口名称是什

golang实战开发的过程中,我们经常会遇到一些这样那样的问题,然后要卡好半天,等问题解决了才发现原来一些细节知识点还是没有掌握好。今天编程网就整理分享《关键字 var 后面的下划线和接口名称是什么意思?》,聊聊,希望可以帮助到正在努力赚钱的你。

问题内容

来自Http://Golang.org/src/pkg/database/sql/driver/types.go:

type ValueConverter interface {
    // ConvertValue converts a value to a driver Value.
    ConvertValue(v interface{}) (Value, error)
}

var Bool boolType

type boolType struct{}

var _ ValueConverter = boolType{} // line 58

func (boolType) String() string { return "Bool" }

func (boolType) ConvertValue(src interface{}) (Value, error) {....}

我知道 valueconverter 是一个接口名称。第 58 行似乎声明 booltype 实现接口 valueconverter,但这有必要吗?我删除了第 58 行,代码运行良好。


解决方案


它提供静态(编译时)检查 boolType 是否满足 ValueConverter 接口。用作变量名称的 _ 告诉编译器有效地丢弃 RHS 值,但要对其进行类型检查并评估它是否有任何副作用,但匿名变量本身不占用任何进程空间。 /p>

在开发和接口的方法集和/或类型实现的方法经常更改时,这是一个方便的构造。该构造可以防止忘记匹配类型和接口的方法集,其目的是使它们兼容。它有效地防止了 go 安装 一个有此类遗漏的损坏(中间)版本。

今天带大家了解了的相关知识,希望对你有所帮助;关于Golang的技术知识我们会一点点深入介绍,欢迎大家关注编程网公众号,一起学习编程~

您可能感兴趣的文档:

--结束END--

本文标题: 关键字 var 后面的下划线和接口名称是什么意思?

本文链接: https://www.lsjlt.com/news/596793.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作