婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁(yè) > 知識(shí)庫(kù) > golang的空標(biāo)識(shí)符理解

golang的空標(biāo)識(shí)符理解

熱門標(biāo)簽:地圖標(biāo)注的汽車標(biāo) 南通如皋申請(qǐng)開通400電話 中國(guó)地圖標(biāo)注省會(huì)高清 江西轉(zhuǎn)化率高的羿智云外呼系統(tǒng) 廣州呼叫中心外呼系統(tǒng) 高德地圖標(biāo)注口訣 西部云谷一期地圖標(biāo)注 浙江高速公路地圖標(biāo)注 學(xué)海導(dǎo)航地圖標(biāo)注

空白符(blank identifier)

空白符的產(chǎn)生可能是因?yàn)間o不允許變量聲明了但不使用。既然不想使用,何必聲明變量呢,那就將變量用空白符代替,反正空白符就是用來(lái)拋棄的。

我們有時(shí)候看到這樣的golang代碼:

import _ "net/http/pprof"

for _, c := range "11234" {
  log.Println(c)
}

var _ io.Reader = (* XXX)(nil)  //全局變量

var _ = Suite(HelloWorldTest{})

代碼中_很獨(dú)特的樣子:說(shuō)是變量吧,但它在同一作用域可以多次被定義;說(shuō)是類型吧,寫法上又不像。

那它到底是何方神圣呢?

其實(shí)官方文檔有定義和介紹,它叫Black Identifier,中文翻譯為空標(biāo)識(shí)符。空標(biāo)識(shí)符不是普通變量,而是語(yǔ)言提供的一種特殊處理,它能避免某個(gè)變量起名,同時(shí)也可以在賦值時(shí)舍棄某個(gè)值。

空標(biāo)識(shí)符一般用于4種場(chǎng)合,正對(duì)應(yīng)上面例子的4段代碼。

1. 引入某包只執(zhí)行包中的init函數(shù),但本包沒(méi)有直接引用該包任何變量或函數(shù),使用import _避免編譯錯(cuò)誤;

2. 函數(shù)有多返回值,忽略其中某些返回值。類似c++11 std::ignore在std::tie中的運(yùn)用;

3. 編譯期檢查,比如某類型有沒(méi)有實(shí)現(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

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接

您可能感興趣的文章:
  • go for range坑和閉包坑的分析
  • strings命令分析淺談Go和C++編譯時(shí)的一點(diǎn)小區(qū)別
  • go panic時(shí)如何讓函數(shù)返回?cái)?shù)據(jù)?
  • go代碼實(shí)現(xiàn)買房貸款月供計(jì)算的方法
  • linux下搭建go環(huán)境的安裝配置講解
  • 為什么Go語(yǔ)言把類型聲明放在后面?
  • 用go gin server來(lái)做文件上傳服務(wù)
  • 使用go gin來(lái)操作cookie的講解
  • 在go中使用omitempty的代碼實(shí)例
  • go for range遍歷二維數(shù)組的示例

標(biāo)簽:吐魯番 保定 貴州 德宏 許昌 常州 曲靖 東營(yíng)

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《golang的空標(biāo)識(shí)符理解》,本文關(guān)鍵詞  golang,的,空,標(biāo)識(shí)符,理解,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《golang的空標(biāo)識(shí)符理解》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于golang的空標(biāo)識(shí)符理解的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 谢通门县| 永泰县| 社旗县| 榕江县| 蓬安县| 深圳市| 泰来县| 商水县| 鹤山市| 文山县| 中宁县| 囊谦县| 阿鲁科尔沁旗| 城步| 杨浦区| 龙井市| 额尔古纳市| 博湖县| 宁乡县| 休宁县| 辉县市| 扎兰屯市| 五大连池市| 麟游县| 奉新县| 林芝县| 寻乌县| 宣威市| 永靖县| 普陀区| 鄂尔多斯市| 潞西市| 措美县| 凤庆县| 三门峡市| 周口市| 乌兰浩特市| 阜城县| 长寿区| 阿拉善左旗| 碌曲县|