本篇文章給大家分享的是有關(guān)golang中空標(biāo)識符的作用是什么,小編覺得挺實用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
成都創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都網(wǎng)站制作、成都做網(wǎng)站、外貿(mào)營銷網(wǎng)站建設(shè)、扎囊網(wǎng)絡(luò)推廣、微信小程序開發(fā)、扎囊網(wǎng)絡(luò)營銷、扎囊企業(yè)策劃、扎囊品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎;成都創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供扎囊建站搭建服務(wù),24小時服務(wù)熱線:18980820575,官方網(wǎng)址:aaarwkj.com
空白符(blank identifier)
空白符的產(chǎn)生可能是因為go不允許變量聲明了但不使用。既然不想使用,何必聲明變量呢,那就將變量用空白符代替,反正空白符就是用來拋棄的。
我們有時候看到這樣的golang代碼:
import _ "net/http/pprof"
或
for _, c := range "11234" { log.Println(c) }
或
var _ io.Reader = (* XXX)(nil) //全局變量
或
var _ = Suite(&HelloWorldTest{})
代碼中_很獨特的樣子:說是變量吧,但它在同一作用域可以多次被定義;說是類型吧,寫法上又不像。
那它到底是何方神圣呢?
其實官方文檔有定義和介紹,它叫Black Identifier
,中文翻譯為空標(biāo)識符??諛?biāo)識符不是普通變量,而是語言提供的一種特殊處理,它能避免某個變量起名,同時也可以在賦值時舍棄某個值。
空標(biāo)識符一般用于4種場合,正對應(yīng)上面例子的4段代碼。
1. 引入某包只執(zhí)行包中的init函數(shù),但本包沒有直接引用該包任何變量或函數(shù),使用import _避免編譯錯誤;
2. 函數(shù)有多返回值,忽略其中某些返回值。類似c++11 std::ignore在std::tie中的運用;
3. 編譯期檢查,比如某類型有沒有實現(xiàn)某接口的檢查;
4. 想在main之前執(zhí)行某段代碼,當(dāng)然用init也可以。
示例 blank_identifier.go
package main import "fmt" func main() { var i1 int var f1 float32 i1, _, f1 = ThreeValues() fmt.Printf("The int: %d, the float: %f \n", i1, f1) } func ThreeValues() (int, int, float32) { return 5, 6, 7.5 }
輸出結(jié)果:
The int: 5, the float: 7.500000
以上就是golang中空標(biāo)識符的作用是什么,小編相信有部分知識點可能是我們?nèi)粘9ぷ鲿姷交蛴玫降?。希望你能通過這篇文章學(xué)到更多知識。更多詳情敬請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
當(dāng)前文章:golang中空標(biāo)識符的作用是什么
鏈接地址:http://aaarwkj.com/article16/igcodg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App開發(fā)、網(wǎng)站建設(shè)、商城網(wǎng)站、網(wǎng)站排名、外貿(mào)網(wǎng)站建設(shè)、Google
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)