ホームページ > バックエンド開発 > Golang > Go の「if...else」ステートメント内で宣言された変数にアクセスする方法

Go の「if...else」ステートメント内で宣言された変数にアクセスする方法

DDD
リリース: 2024-11-14 09:33:02
オリジナル
999 人が閲覧しました

How to Access Variables Declared Inside an `if...else` Statement in Go?

Go の変数スコープ

Go では、変数は特定のスコープ内で宣言する必要があります。 if...else ステートメント内で変数を宣言すると、そのスコープはそのステートメントに制限されます。これは、変数をステートメントの外で使用できないことを意味します。

次のコードを考えてみましょう。

if strings.EqualFold(r.Method, "GET") || strings.EqualFold(r.Method, "") {
    req, er := http.NewRequest(r.Method, r.Uri, b)
} else {
    req, er := http.NewRequest(r.Method, r.Uri, b)
}
ログイン後にコピー

このコードでは、変数 req と er が if... 内で宣言されています。 else ステートメント。これは、そのステートメント内でのみ使用できることを意味します。ステートメントの外では、変数は未定義です。

この問題を解決するには、以下に示すように、if...else ステートメントの外で変数を宣言できます。

var req *http.Request
var er error
if strings.EqualFold(r.Method, "GET") || strings.EqualFold(r.Method, "") {
    req, er = http.NewRequest(r.Method, r.Uri, b)
} else {
    req, er = http.NewRequest(r.Method, r.Uri, b)
}
ログイン後にコピー

Now 、変数 req と er は if...else ステートメントの外側で宣言されているため、関数全体で使用できます。

以上がGo の「if...else」ステートメント内で宣言された変数にアクセスする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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