亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Go?中的空白標(biāo)識(shí)符下劃線

 更新時(shí)間:2022年03月25日 16:44:32   作者:宇宙之一粟  
這篇文章主要介紹了Go?中的空白標(biāo)識(shí)符下劃線,空白標(biāo)識(shí)符是未使用的值的占位符,由下劃線(_)表示,下文對(duì)其相關(guān)介紹需要的小伙伴可以參考一下

Go 中的空白標(biāo)識(shí)符(下劃線)_標(biāo)識(shí)符

與 Python 一樣,Go 語言也有空白標(biāo)識(shí)符。

1.什么是空白標(biāo)識(shí)符

空白標(biāo)識(shí)符是未使用的值的占位符。它由下劃線(_)表示。由于空白標(biāo)識(shí)符沒有名稱,因此它們也被稱為匿名占位符。

在 Go 語言中, 不允許聲明未使用的變量或?qū)胝Z句。也就是說,我們無法聲明變量并將其留下未使用。同樣,如果您導(dǎo)入一個(gè)包,那么也必須使用它。

這個(gè)時(shí)候就需要一個(gè)空白標(biāo)識(shí)符。

2.未使用的賦值變量

如果 Go 中的函數(shù)返回多個(gè)值,則必須定義相等數(shù)量的變量來保存這些值。但是,如果您只需要其中一些值而不需要其他值,若某次賦值需要匹配多個(gè)左值,但其中某個(gè)變量不會(huì)被程序使用, 那么用空白標(biāo)識(shí)符來代替。該變量可避免創(chuàng)建無用的變量,并能清楚地表明該值將被丟棄。

如下所示:

result, error = Dosomething()
if error {
// handle error
}

在上面的代碼中,??result?? 與程序無關(guān),而且后續(xù)代碼也沒有使用它。如果編譯的話,Go 編譯器會(huì)報(bào)錯(cuò)。

result declared but not used

在這種情況下,您可以將結(jié)果替換為下劃線或空白標(biāo)識(shí)符,

如下所示:

_, error = Dosomething()
if error {
// handle error
}

即使您聲明了一個(gè)變量,您也可以稍后使用空白標(biāo)識(shí)符來忽略它,如下面的代碼所示:

product, error = Dosomething()
if error {
// handle error
}
// ignore unused variable
_ = product

在 ??for...range?? 中使用空白標(biāo)志符

func Sum(numbers []int) int {

sum := 0
for _, number := range numbers {
sum += number
}
return sum
}

3.未知的結(jié)構(gòu)體

可以利用 ??_?? 分配任何東西:

var _ I = T{}

無法訪問此變量,以便將從生成的程序中優(yōu)化。但是,如果 T 類型未分配給接口 ??I?? ,則可能會(huì)導(dǎo)致編譯錯(cuò)誤。因此,在這種情況下,它被用作關(guān)于類型的靜態(tài)斷言。

4.未使用的包

在 Go 中,如果你導(dǎo)入一個(gè)包,那么你必須使用它,否則會(huì)出現(xiàn)編譯器錯(cuò)誤。

imported and not used “<package name>”

空白標(biāo)識(shí)符可用于解決此編譯器錯(cuò)誤。

有兩種方法可以使用空白標(biāo)識(shí)符來解決未使用的包錯(cuò)誤,如下所示:

第一種:聲明一個(gè)全局空白標(biāo)識(shí)符(在 ??main()?? 函數(shù)之前),該標(biāo)識(shí)符從未使用的包中訪問符號(hào),例如下面代碼中的 Open:

import "os"
var _ = os.Open
func main() {
}

第二種:在未使用的包前加上一個(gè)空白標(biāo)識(shí)符,

如下所示:

import _ "os"

func main(){
}

空白標(biāo)識(shí)符通過避免在整個(gè)代碼中使用未使用的變量聲明,使代碼更具可讀性。

5.總結(jié)

Golang 中任何聲明但未使用的包和變量都會(huì)引發(fā)錯(cuò)誤。這一規(guī)則使得我們的代碼保持干凈和輕量。

  • 有時(shí)如果需要在未來使用并提前導(dǎo)入一些軟件包,就可以使用空白標(biāo)識(shí)符。
  • 有時(shí)候函數(shù)會(huì)返回多個(gè)參數(shù),但是我們只需要使用其中一個(gè)變量的時(shí)候,就可以通過空白標(biāo)志符來進(jìn)行接收。

到此這篇關(guān)于Go 中的空白標(biāo)識(shí)符下劃線的文章就介紹到這了,更多相關(guān)Go 空白標(biāo)識(shí)符內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 詳解Gotorch多機(jī)定時(shí)任務(wù)管理系統(tǒng)

    詳解Gotorch多機(jī)定時(shí)任務(wù)管理系統(tǒng)

    遵循著“學(xué)一門語言最好的方式是使用它”的理念,想著用Go來實(shí)現(xiàn)些什么,剛好有一個(gè)比較讓我煩惱的問題,于是用Go解決一下,即使不在生產(chǎn)環(huán)境使用,也可以作為Go語言學(xué)習(xí)的一種方式。
    2021-05-05
  • go語言結(jié)構(gòu)體指針操作示例詳解

    go語言結(jié)構(gòu)體指針操作示例詳解

    這篇文章主要為大家介紹了go語言結(jié)構(gòu)體指針操作示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪
    2022-04-04
  • Golang精編49面試題匯總(選擇題)

    Golang精編49面試題匯總(選擇題)

    這篇文章主要介紹了Golang精編49面試題匯總(選擇題),本文章內(nèi)容詳細(xì),具有很好的參考價(jià)值,希望對(duì)大家有所幫助,需要的朋友可以參考下
    2023-01-01
  • 基于Go語言實(shí)現(xiàn)一個(gè)壓測(cè)工具

    基于Go語言實(shí)現(xiàn)一個(gè)壓測(cè)工具

    這篇文章主要為大家詳細(xì)介紹了基于Go語言實(shí)現(xiàn)一個(gè)簡(jiǎn)單的壓測(cè)工具,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2025-01-01
  • Go項(xiàng)目怎么使用枚舉

    Go項(xiàng)目怎么使用枚舉

    枚舉是一種很重要的數(shù)據(jù)類型,本文主要介紹了Go項(xiàng)目怎么使用枚舉,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • go語言區(qū)塊鏈學(xué)習(xí)調(diào)用智能合約

    go語言區(qū)塊鏈學(xué)習(xí)調(diào)用智能合約

    這篇文章主要為大家介紹了go語言區(qū)塊鏈學(xué)習(xí)中如何調(diào)用智能合約的實(shí)現(xiàn)示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步
    2021-10-10
  • 搭建Go語言的ORM框架Gorm的具體步驟(從Java到go)

    搭建Go語言的ORM框架Gorm的具體步驟(從Java到go)

    很多朋友不知道如何使用Goland軟件,搭建一個(gè)ORM框架GORM,今天小編給大家分享一篇教程關(guān)于搭建Go語言的ORM框架Gorm的具體步驟(從Java到go),感興趣的朋友跟隨小編一起學(xué)習(xí)下吧
    2022-09-09
  • go語言中sort包的實(shí)現(xiàn)方法與應(yīng)用詳解

    go語言中sort包的實(shí)現(xiàn)方法與應(yīng)用詳解

    golang中也實(shí)現(xiàn)了排序算法的包sort包,所以下面這篇文章主要給大家介紹了關(guān)于go語言中sort包的實(shí)現(xiàn)方法與應(yīng)用的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友們可以參考借鑒,下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-11-11
  • golang中進(jìn)行條件編譯的示例詳解

    golang中進(jìn)行條件編譯的示例詳解

    條件編譯顧名思義就是在編譯時(shí)讓代碼中的一部分生效或者失效,從而控制編譯時(shí)的代碼執(zhí)行路徑,進(jìn)而影響編譯出來的程序的行為,下面我們就來看看如何在golang中進(jìn)行條件編譯吧
    2025-03-03
  • Go并發(fā)4種方法簡(jiǎn)明講解

    Go并發(fā)4種方法簡(jiǎn)明講解

    這篇文章主要介紹了Go并發(fā)4種方法簡(jiǎn)明講解,需要的朋友可以參考下
    2022-04-04

最新評(píng)論