精品专区-精品自拍9-精品自拍三级乱伦-精品自拍视频-精品自拍视频曝光-精品自拍小视频

網站建設資訊

NEWS

網站建設資訊

golang中空標識符的作用是什么

本篇文章給大家分享的是有關golang中空標識符的作用是什么,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

成都創新互聯專注為客戶提供全方位的互聯網綜合服務,包含不限于成都網站制作、成都做網站、外貿營銷網站建設、扎囊網絡推廣、微信小程序開發、扎囊網絡營銷、扎囊企業策劃、扎囊品牌公關、搜索引擎seo、人物專訪、企業宣傳片、企業代運營等,從售前售中售后,我們都將竭誠為您服務,您的肯定,是我們最大的嘉獎;成都創新互聯為所有大學生創業者提供扎囊建站搭建服務,24小時服務熱線:18980820575,官方網址:www.cdcxhl.com

空白符(blank identifier)

空白符的產生可能是因為go不允許變量聲明了但不使用。既然不想使用,何必聲明變量呢,那就將變量用空白符代替,反正空白符就是用來拋棄的。

我們有時候看到這樣的golang代碼:

import _ "net/http/pprof"

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

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

var _ = Suite(&HelloWorldTest{})

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

那它到底是何方神圣呢?

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

空標識符一般用于4種場合,正對應上面例子的4段代碼。

1. 引入某包只執行包中的init函數,但本包沒有直接引用該包任何變量或函數,使用import _避免編譯錯誤;

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

3. 編譯期檢查,比如某類型有沒有實現某接口的檢查;

4. 想在main之前執行某段代碼,當然用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
}

輸出結果:

The int: 5, the float: 7.500000

以上就是golang中空標識符的作用是什么,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注創新互聯行業資訊頻道。


當前文章:golang中空標識符的作用是什么
文章出自:http://m.jcarcd.cn/article/igcodg.html
主站蜘蛛池模板: 国产精品欧美专区 | 日本精品成 | 无码av波多 | 欧洲视频| 国产理伦在线观看 | 三区精品在线观看 | 精品国产亚洲人成在 | 国一产区视频 | 国产馆极品在线 | www.7777| 欧美影院一区二区 | 最新热门影视资源在线看 | 最新国产拍偷乱偷 | 91福利视| 日韩素人一区二区 | 99热20| 日韩午夜成人影院 | 18精品 | 国产手机精品一 | 国产婷婷久 | 欧美亚洲高清日本 | 人人摸人人玩 | 国产香线 | 区二区视频免费看 | 国产在线一二三区 | 日本高清乱理 | 精品女人在线观看 | 国产精品强上在线 | 国产精品官网 | 中文字幕在线视频 | 成人自拍视频免费 | 日韩中文在线字 | 中文字幕人成 | 欧美日韩一级免 | 国产中文 | 日本全部一级视频 | 欧美日夜干影院 | 成人国产在线视频 | 欧美日韩一卡二区 | 日韩欧美国产一线 | 日本中文字幕电影 |