91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Go命名、變量和常量怎么定義

發布時間:2022-10-19 17:21:01 來源:億速云 閱讀:131 作者:iii 欄目:編程語言

這篇“Go命名、變量和常量怎么定義”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“Go命名、變量和常量怎么定義”文章吧。

命名

Go語言中的函數名、變量名、常量名、類型名、語句標號和包名等所有的命名,都遵循一個簡單的命名規則:一個名字必須以一個字母(Unicode字母)或下劃線開頭,后面可以跟任意數量的字母、數字或下劃線。大寫字母和小寫字母是不同的:heapSort和Heapsort是兩個不同的名字。

Go語言中類似if和switch的關鍵字有25個(均為小寫)。關鍵字不能用于自定義名字,只能在特定語法結構中使用。

Go命名、變量和常量怎么定義

此外,還有大約30多個預定義的名字,比如int和true等,主要對應內建的常量、類型和函數。

Go命名、變量和常量怎么定義

變量

變量是幾乎所有編程語言中最基本的組成元素,變量是程序運行期間可以改變的量。

從根本上說,變量相當于是對一塊數據存儲空間的命名,程序可以通過定義一個變量來申請一塊數據存儲空間,之后可以通過引用變量名來使用這塊存儲空間。

變量聲明

Go語言的變量聲明方式與C和C++語言有明顯的不同。對于純粹的變量聲明, Go語言引入了關鍵字var,而類型信息放在變量名之后,示例如下:

var v1 int
    var v2 int

    //一次定義多個變量
    var v3, v4 int 

    var (
        v5 int
        v6 int

變量初始化

對于聲明變量時需要進行初始化的場景, var關鍵字可以保留,但不再是必要的元素,如下所示:

var v1 int = 10 // 方式1
    var v2 = 10     // 方式2,編譯器自動推導出v2的類型
    v3 := 10        // 方式3,編譯器自動推導出v3的類型

    //出現在 := 左側的變量不應該是已經被聲明過
    var v4 int
    v4 := 2 //err

變量賦值

var v1 int
    v1 = 123

    var v2, v3, v4 int
    v2, v3, v4 = 1, 2, 3    //多重賦值

    i := 10
    j := 20
    i, j = j, i    //多重賦值

匿名變量

_(下劃線)是個特殊的變量名,任何賦予它的值都會被丟棄:

_, i, _, j := 1, 2, 3, 4

func test() (int, string) {
    return 250, "sb"

常量

在Go語言中,常量是指編譯期間就已知且不可改變的值。常量可以是數值類型(包括整型、浮點型和復數類型)、布爾類型、字符串類型等。

字面常量(常量值)

所謂字面常量(literal),是指程序中硬編碼的常量,如:

123
3.1415  // 浮點類型的常量
3.2+12i // 復數類型的常量
true  // 布爾類型的常量
"foo" // 字符串常量

常量定義

const Pi float64 = 3.14
    const zero = 0.0 // 浮點常量, 自動推導類型

    const ( // 常量組
        size int64 = 1024
        eof        = -1 // 整型常量, 自動推導類型
    )
    const u, v float32 = 0, 3 // u = 0.0, v = 3.0,常量的多重賦值
    const a, b, c = 3, 4, "foo"
    // a = 3, b = 4, c = "foo"    //err, 常量不能修改

iota枚舉

常量聲明可以使用iota常量生成器初始化,它用于生成一組以相似規則初始化的常量,但是不用每行都寫一遍初始化表達式。在一個const聲明語句中,在第一個聲明的常量所在的行,iota將會被置為0,然后在每一個有常量聲明的行加一。

const (
    x = iota // x == 0
    y = iota // y == 1
    z = iota // z == 2
    w        // 這里隱式地說w = iota,因此w == 3。其實上面y和z可同樣不用"= iota"
)

const v = iota // 每遇到一個const關鍵字,iota就會重置,此時v == 0

const (
    h, i, j = iota, iota, iota //h=0,i=0,j=0 iota在同一行值相同
)

const (
    a       = iota //a=0
    b       = "B"
    c       = iota             //c=2
    d, e, f = iota, iota, iota //d=3,e=3,f=3
    g       = iota             //g = 4

以上就是關于“Go命名、變量和常量怎么定義”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

go
AI

神农架林区| 马山县| 丹东市| 神木县| 元氏县| 九寨沟县| 韶关市| 通许县| 凌源市| 柞水县| 壤塘县| 乌兰浩特市| 西贡区| 盱眙县| 察哈| 青冈县| 济源市| 丁青县| 中宁县| 包头市| 土默特右旗| 安化县| 安徽省| 榆树市| 鸡泽县| 米泉市| 谷城县| 泰兴市| 皮山县| 黔西县| 东安县| 涿州市| 本溪| 汨罗市| 临城县| 武鸣县| 酉阳| 封开县| 海原县| 巨鹿县| 于都县|