golang 下划线(underscore)的意义

"_"(下划线),能够简单理解为赋值但之后再也不使用,在golang中使用比较多,使用场合不单一,这里稍做总结,方便理解golang

用在import函数

import _ "net/http/pprof"get

pprof常见用法
引入包,会先调用包中的初始化函数,这种使用方式仅让导入的包作初始化,而不使用包中其余功能string

用在返回值编译

for _,v := range Slice{}import

_,err := func()
表示忽略某个值。单函数有多个返回值,用来获取某个特定的值变量

用在变量im

type T struct{}
var _ I = T{}error

其中 I为interface
上面用来判断 type T是否实现了I,用做类型断言,若是T没有实现借口I,则编译错误.总结

用在函数定义中省略带名的参数

func demo() ( int, int, string, int ,error)
返回多个参数时,尤为是类型相同的,不利于阅读,

func demo() ( sumA int, sumB int, string, total int , error)
返回参数 int 加了名字,对比上面,便于理解,可是 "string" 和 "error"没有名字,编译会报错,用下划线能够忽略命名

原做者:大漠狼道
原文连接:https://www.jianshu.com/p/309...

相关文章
相关标签/搜索