GO語言 變數

2021-10-07 10:20:09 字數 1039 閱讀 3347

宣告方式

var name type
和c/c++中

type name;

extern type name;

在go語言中所有形式變數名稱都在型別的前面,這點和c/c++是反過來的。注意如果區域性變數c/c++會是乙個隨機值,而go語言會初始化為0

定義方式

var n int = 10

n := 10

這兩行是等價的。第一行指定了n為int型並賦值為10。第二行用了:=表示定義乙個新的變數n,並根據右邊的表示式自動推定n的型別並賦值。注意 := 在這裡只能定義乙個新的變數,如果n之前被定義過,那麼就會報錯。

和c++ 11中

int n = 10;

auto n = 10;

相對應。

另外go語言支援多了不同型別的變數同時定義或賦值如下

str, n, f := "ok", 10, 11.10

str, n = "no", 20

編譯器會依次對變數進行定義或賦值。注意第一行的寫法中三個變數中必須有乙個在此之前沒有被定義過。

go語言是有package的概念,有點類似c++的namespace。不同的是,go語言的包是強制的,c++的namespace並不是。所以直接的影響是全域性變數。例如在go語言中

package test

var(

i int

i int

)

定義了兩個全域性變數小寫的i和大寫的i。之所以這麼做的原因是在go語言中所有大寫字母開頭的都可以被其他的包訪問,但是小寫字母開頭的就認為是這個包內可見。所以在另乙個包中只能訪問到i但是無法訪問到i。訪問方式是test.i。類似c/c++中

namesapce test

訪問方式 test::i 和 test::i。但是這兩個變數的有效範圍是一致的。

未完待續。。。

Go 語言變數

go 語言變數名由字母 數字 下劃線組成,其中首個字元不能為數字。宣告變數的一般形式是使用 var 關鍵字 var identifier type變數宣告 第二種,根據值自行判定變數型別。第三種,省略 var,注意 左側需要宣告新的變數,否則就會產生編譯錯誤 package main import ...

Go語言變數

可以包含字幕,數字,下劃線。必須是字幕或者下劃線開頭 下劃線不建議 不能是關鍵字。首字母大寫為公有變數,可以被外包應用,小寫為私有變數,只可以在包內使用。1 var 變數名 型別名 變數值 2 自動推導型別 變數名 變數值 go語言函式支援多個返回值,當某個返回值不需要時,可以用匿名變數下劃線 接收...

GO語言變數

1.變數的宣告和初始化 在go語言中,變數使用關鍵字var進行宣告,具體格式為 var 變數名1,變數名2 資料型別 初始值1,初始值2 以上方式需要確保變數的資料型別相同,如果是多個不同型別的變數,也可以使用如下方式 var 如果採用這種方式的話,型別會自動推導,因此資料型別可以省略掉,以簡化工作...