go語言基礎之 iota的用法

2021-10-08 16:16:04 字數 848 閱讀 3860

iota 是go語言中的乙個特殊常量,它的應用遵循以下五條規則,接下來將通過**一一驗證:

-   不同const 定義塊互不干擾

-   所有注釋行和空行全部忽略

-   沒有表示式的常量定義復用上一行的表示式

-   從第一行開始,iota 從 0 逐行加一

-   替換所有 iota

1. 不同 const 定義塊互不干擾

const (

a = iota bc

)const (

d = iota e f

)

輸出結果: a = 0, b = 1, c = 2; d = 0, e = 1, f = 2, 由此可見從第一行開始,iota 從 0 逐行加一,不同的 const 之間互不干擾。2. 所有注釋行和空行全部忽略

const (

a = iota//b

c)

輸出結果為: a = 0, b = 1, c = 2, 由此可見,空行和注釋並沒有實際作用,可以直接忽略。

3. 沒有表示式的常量定義復用上一行的表示式

const (

a = iota // iota = 0

b = 1 + iota // iota = 1

c 3 // iota = 2

)

輸出: a = 0, b = 2 , c = 3 , c 復用了 b 的表示式, c = 1 + iota ,因為 iota = 2 ,所以 c = 3。

GO基礎 神奇的iota特殊常量

最近在學習go語言,然後發現有乙個特殊常量是以前沒有接觸過的,比較感興趣,這裡給大家介紹一下。iota,特殊常量,可以被認為是乙個可以被編譯器修改的常量。核心概念 iota在const關鍵字出現時將被重置為0 const內部的第一行之前 const中每新增一行常量宣告將使iota計數一次。這麼來看,...

go語言(三)常量和iota

和php定義一樣,一次賦值後不可重複賦值,可以批量宣告,package main import fmt const pi 3.1415926 const statusok 200 notfound 404 批量常量賦值,如果某一行宣告後沒有賦值,預設和上一行一致 const n1 200 n2 10...

GO 學習之常量與iota

相對於變數,常量是恆定不變的值,多用於定義程式執行期間不會改變的那些值。常量的宣告和變數宣告非常類似,只是把var換成了const,常量在定義的時候必須賦值。舉例 package main import fmt 單個宣告常量 const pi 3.1415926 批量宣告常量 const statu...