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...

相關文章
相關標籤/搜索