ホームページ > バックエンド開発 > Golang > Go で関数の外で変数を宣言できないのはなぜですか?

Go で関数の外で変数を宣言できないのはなぜですか?

Susan Sarandon
リリース: 2024-11-29 20:00:15
オリジナル
933 人が閲覧しました

Why Can't I Declare a Variable Outside a Function in Go?

Go の関数本体外の非宣言ステートメント

Go では、関数本体外の非宣言ステートメントはエラーをトリガーします。これはコード スニペットで確認できます。

package apitest

import (
    "fmt"
)

test := "This is a test."

func main() {
    fmt.Println(test)
    test = "Another value"
    fmt.Println(test)
}
ログイン後にコピー

このコードは、main() 関数の外側で変数を宣言し、それに値を割り当てようとします。ただし、Go では、関数本体の外で非宣言ステートメントを使用することはできません。

慣用的なアプローチ

パッケージ内のどこからでもアクセスできる変数を宣言する慣用的な Go の方法ですが、必ずしも定数である必要はありません:

var test = "This is a test"
ログイン後にコピー
  • var キーワードを使用すると、という名前の変数が宣言されます。 test.
  • 小文字の「t」は、変数がパッケージ内 (エクスポートされていない) 内でのみ表示されることを示します。
  • 代入演算子 = は、値「This is a test」で変数を初期化します。

変数特性

テスト変数:

  • apitest パッケージ内のどこからでもアクセスできます。
  • 再割り当てでき、変更可能になります。

追加メモ

  • var test の代わりに = "これはtest" のように、var test string = "This is a test" と書くこともできますが、これは慣用的な Go とはみなされません。
  • Go は、複雑なパッケージの初期化やパッケージ状態のセットアップのための init 関数も提供します。 Init はメイン実行の前に呼び出されます。

以上がGo で関数の外で変数を宣言できないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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