Go基礎程式設計 作用域

2021-09-09 08:41:09 字數 746 閱讀 7719

鏈客,有問必答!!

小弟初學go語言,感覺作用域的運用還是很廣泛的,所以就寫上一點,也許有的都是很常見的,不過也沒關係,方便以後查詢。

作用域為已宣告識別符號所表示的常量、型別、變數、函式或包在源**中的作用範圍。

全域性變數

在函式體外宣告的變數稱之為全域性變數,全域性變數可以在整個包甚至外部包(被匯出後)使用。

var a int //全域性變數的宣告

func test()

func main()

區域性變數

在函式體內宣告的變數、引數和返回值變數就是區域性變數,它們的作用域只在函式體內:

func test(a, b int)

func main()

//i = 20 //err, i不屬於此作用域

if a := 3; a == 3

//a = 4 //a在能if內部使用

}不同作用域同名變數

在不同作用域可以宣告同名的變數,其訪問原則為:在同乙個作用域內,就近原則訪問最近的變數,如果此作用域沒有此變數宣告,則訪問全域性變數,如果全域性變數也沒有,則報錯。

var a int //全域性變數的宣告

func test01(a float32)

func main()

fmt.printf(「a type = %t\n」, a) //a type = uint8

test01(3.14)

test02()

}func test02()

Go基礎程式設計 作用域規則

作用域為已宣告識別符號所表示的常量 型別 變數 函式或包在源 中的作用範圍。在函式體內宣告的變數 引數和返回值變數就是區域性變數,它們的作用域只在函式體內 func test a,b int func main i 20 err,i不屬於此作用域 if a 3 a 3 a 4 a在能if內部使用 在...

Go程式語言2 7 作用域

2.7 作用域 宣告將名字和程式實體關聯起來,如乙個函式或乙個變數。宣告的作用域是指用到宣告時所宣告名字的源 段。不要將作用域和生命週期混淆。宣告的作用域是宣告在程式文字 現的區域,它是乙個編譯時屬性。變數的生命週期是變數在程式執行期間能被程式的其他部分所引用的起止時間,它是乙個執行時屬性。語法塊 ...

go變數作用域

變數 作用域 表示變數的 可訪問性 根據作用域的大小一般分為全域性變數與區域性變數 宣告在函式內部的變數稱為區域性變數,宣告在函式外部的變是全域性變數 還有宣告在 塊中的變數也稱為區域性變數 大括號中的 稱為語句塊,直接大括號或者for迴圈或者if語句塊等 func main a 100 全域性變數...