首頁 > 後端開發 > Golang > 為什麼我不能在 Go 的套件層級使用短變數宣告(`:=`)?

為什麼我不能在 Go 的套件層級使用短變數宣告(`:=`)?

DDD
發布: 2024-12-25 09:44:09
原創
767 人瀏覽過

Why Can't I Use Short Variable Declarations (`:=`) at the Package Level in Go?

套件層級的短變數宣告

在Go 中,函數內允許短變數宣告(使用:=),但不允許在封裝級別。這可能會令人費解,因為在函數外部使用 := 看起來就像沒有類型的常規聲明。

限制的原因

根據 Ian Lance Taylor 的說法, Go 的創建者認為,該限制的存在只是為了簡化解析。頂級聲明總是以關鍵字開頭,例如 var、func、import 等。這簡化了語法並使編譯器的解析更加簡單。

範例

允許使用var 進行包級宣告:

package main

var a = 3
登入後複製

短變數宣告使用:= 在套件層級不允許:

package main

a := 3
登入後複製

以上是為什麼我不能在 Go 的套件層級使用短變數宣告(`:=`)?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板