ホームページ > バックエンド開発 > Golang > Go のパッケージ レベルで短い変数宣言 (`:=`) を使用できないのはなぜですか?

Go のパッケージ レベルで短い変数宣言 (`:=`) を使用できないのはなぜですか?

DDD
リリース: 2024-12-25 09:44:09
オリジナル
797 人が閲覧しました

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 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート