溫馨提示×

溫馨提示×

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

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

golang為什么不可以隱式轉換

發布時間:2020-06-16 14:24:02 來源:億速云 閱讀:649 作者:鴿子 欄目:編程語言

這種功能帶來的隱患比便利要多,Golang中Int和int64都不是一個類型,不能隱式轉換。

Go 編程語言是一個開源項目,它使程序員更具生產力。

Go 語言具有很強的表達能力,它簡潔、清晰而高效。得益于其并發機制,用它編寫的程序能夠非常有效地利用多核與聯網的計算機,其新穎的類型系統則使程序結構變得靈活而模塊化。

Go代碼編譯成機器碼不僅非常迅速,還具有方便的垃圾收集機制和強大的運行時反射機制。 它是一個快速的、靜態類型的編譯型語言,感覺卻像動態類型的解釋型語言。

Go語言是靜態類型語言,因此變量(variable)是有明確類型的,編譯器也會檢查變量類型的正確性。在數學概念中,變量表示沒有固定值且可改變的數。但從計算機系統實現角度來看,變量是一段或多段用來存儲數據的內存。

聲明變量的一般形式是使用 var 關鍵字:

var name type

其中,var 是聲明變量的關鍵字,name 是變量名,type 是變量的類型。

需要注意的是,Go語言和許多編程語言不同,它在聲明變量時將變量的類型放在變量的名稱之后。

這樣做的好處就是可以避免像C語言中那樣含糊不清的聲明形式,例如:int* a, b; 。其中只有 a 是指針而 b 不是。如果你想要這兩個變量都是指針,則需要將它們分開書寫。

而在 Go 中,則可以和輕松地將它們都聲明為指針類型:

var a, b *int

Go語言的基本類型有:

bool
string
int、int8、int16、int32、int64
uint、uint8、uint16、uint32、uint64、uintptr
byte // uint8 的別名
rune // int32 的別名 代表一個 Unicode 碼
float32、float64
complex64、complex128

當一個變量被聲明之后,系統自動賦予它該類型的零值:int 為 0,float 為 0.0,bool 為 false,string 為空字符串,指針為 nil 等。所有的內存在 Go 中都是經過初始化的。

變量的命名規則遵循駱駝命名法,即首個單詞小寫,每個新單詞的首字母大寫,例如:numShips 和 startDate 。

變量的聲明有幾種形式,通過下面幾節進行整理歸納。

標準格式

Go語言的變量聲明的標準格式為:

var 變量名 變量類型

變量聲明以關鍵字 var 開頭,后置變量類型,行尾無須分號。

以上就是golang不能隱式轉換嗎的詳細內容,更多請關注億速云其它相關文章!

向AI問一下細節

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

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女