ホームページ >バックエンド開発 >Golang >Go で関数本体の外でグローバル変数を初期化するにはどうすればよいですか?

Go で関数本体の外でグローバル変数を初期化するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-11-13 08:20:02322ブラウズ

How do I Initialize Global Variables in Go Outside of Function Bodies?

Go の関数本体外部の非宣言ステートメント: グローバル変数の初期化について

JSON でデータを提供する API の Go ライブラリを使用する場合XML 形式やセッション ID を安全に管理する必要があります。これを行うには、API 呼び出し中に使用する変数を main() 関数の外側に割り当てることができます。

Go は、関数本体の外側で変数を宣言するための特定のルールに従います。 := を使用して関数内で変数を宣言するために使用される構文は、グローバル変数の初期化には適していません。代わりに、var の後に変数名とその値を続ける必要があります。

たとえば、あなたの場合、次のように値「This is a test」を持つグローバル変数 test を宣言できます。

package apitest

import (
    "fmt"
)

var test = "This is a test."

テストの小文字の「t」は、パッケージ内でのみアクセス可能であり、エクスポートできないことを示していることに注意してください。

このアプローチにより、次のことが可能になります。

次の例を考えてみましょう:

package main

import "fmt"

var test string = "Initial Test"

func main() {
    fmt.Println(test)      // Prints "Initial Test"
    changeTest("New Test")
    fmt.Println(test)      // Prints "New Test"
}

func changeTest(newTest string) {
    test = newTest
}

このシナリオでは、パッケージ レベルの変数テストが「初期テスト」に初期化されています。 。」 main() 関数内で、changeTest() 関数を呼び出し、新しい値「New Test」を渡します。その後、changeTest() 関数は test の値を更新します。

プログラムが実行されると、次の出力が行われます。

Initial Test
New Test

これは、パッケージ全体でグローバル変数にアクセスして変更できることを示しています。 API 統合に必要なセッション ID やその他のデータを管理できます。

以上がGo で関数本体の外でグローバル変数を初期化するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。