golang const 宣告常量量時候,只寫名字,就會自動有值?——>[批量賦值][列舉]

wangchunbo發表於2020-06-02

關鍵詞: const


package main

import  "fmt"

func  main() {

    //var a int = 10

    //常量的定義 一般定義常量使用大寫字母

    const MAX int = 10

    //常量可以參與程式的計算

    //b:=a+10

    //常量不允許左值賦值

    //a=a+10//err

    //a=100//err
    //const  MAX = "你瞅啥"
    fmt.Println(MAX)

}

用法

const (
        b = 10
        c = 20   
        // 批量宣告的常量
        // 除了第一個外其它的常量右邊的初始化表示式都可以省略
        // 如果省略初始化表示式則表示使用前面常量的初始化表示式,對應的常量型別也是一樣的
        // 所以下面 d e 都是 與 c 一樣 = 20  只不過批量宣告 省略了
        d
        e
        g
    )

輸出:

b 10
c 20
d 20
e 20
g 20

批量宣告的常量
除了第一個外其它的常量右邊的初始化表示式都可以省略
如果省略初始化表示式則表示使用前面常量的初始化表示式,對應的常量型別也是一樣的
所以下面 d e 都是 與 c 一樣 = 20 只不過批量宣告 省略了

定義

iota列舉格式如果寫在一行中值相等 如果換行值在上一行加一

例子

package main

import  "fmt"

func  main() {

    //iota列舉

    //iota列舉格式如果寫在一行中值相等 如果換行值在上一行加一

    //const (

    // a = iota

    // b, c = iota, iota

    //)

    //只需要對第一個進行iota賦值 後面會依次增長

    //const (

        // a = iota

        // b

        // c

        // d

    //)

    //在定義iota列舉時可以自定義賦值

    const (

        a = iota

        b = 10

        c = 20

        // 批量宣告的常量

        // 除了第一個外其它的常量右邊的初始化表示式都可以省略

        // 如果省略初始化表示式則表示使用前面常量的初始化表示式,對應的常量型別也是一樣的

        // 所以下面 d e 都是 與 c 一樣 = 20 只不過批量宣告 省略了

        d

        e

        f = iota

        g

    )

    //a=100//err

    fmt.Println(a)

    fmt.Println(b)

    fmt.Println(c)

    fmt.Println(d)

    fmt.Println(e)

    fmt.Println(f)

    fmt.Println(g)

}

輸出結果:

wcb@appledeMacBook-Pro-4 01程式碼 % go run 06iota列舉.go
0
10
20
20
20
5
6
本作品採用《CC 協議》,轉載必須註明作者和本文連結

上海PHP自學中心-免費程式設計視訊教學|
7Dn78VKKcW.jpg!large
S3d25uqwht.png!large

相關文章