Golang の void 識別子

Golang では _(アンダースコア) は Blank Identifier と呼ばれます。識別子は、識別目的で使用されるプログラム コンポーネントのユーザー定義名です。

Golang の void 識別子

Golang には、空白識別子を使用して未使用の変数を定義して使用する特別な機能があります。未使用の変数とは、プログラム中にユーザーによって定義されたものの、ユーザーが決して使用しない変数のことです。これらの変数により、プログラムはほぼ判読不能になります。ご存知のとおり、Golang はより簡潔で読みやすいプログラミング言語であるため、プログラマーが未使用の変数を定義することはできません。そうすると、コンパイラはエラーを返します。

空白識別子の実際の使用法は、関数が複数の値を返すものの、必要なのは少数の値だけであり、冗長な値を削除する必要がある場合です。基本的に、この変数は必要ないことをコンパイラに伝え、エラーなしで無視します。変数の値を隠し、プログラムを読みやすくします。したがって、空の識別子に値を割り当てても、それは役に立ちません。

例1:以下のプログラムでは、mul_div関数が2つの値を返し、両方の値をmuldiv識別子に格納します。しかし、プログラム全体では、mulという 1 つの変数のみを使用します。そのため、コンパイラは、divが宣言されているが使用されていないというエラーを出します。

// Chương trình Go hiện trình biên dịch
// báo lỗi nếu một biến
// được khai báo nhưng không được sử dụng

package main

import "fmt"

// Hàm chính
func main() {

	// gọi hàm này
	// hàm trả về hai giá trị được gán
	// cho định danh mul và div
	mul, div := mul_div(105, 7)

	// chỉ dùng biến mul
	// trình biên dịch sẽ báo lỗi
	fmt.Println("105 x 7 = ", mul)
}

// hàm trả về hai 
// giá trị của kiểu integer 
func mul_div(n1 int, n2 int) (int, int) {

	// trả về các giá trị này
	return n1 * n2, n1 / n2
}

結果:

./prog.go:15:7: div được khai báo nhưng không được dùng

例 2:空白識別子を使用して上記のプログラムを変更します。 div を識別する代わりに、_ (アンダースコア)を使用します。これにより、コンパイラは特定の変数の宣言済みエラーと未使用エラーを無視できるようになります。

// Chương trình Go dùng định danh trống

package main

import "fmt"

// Hàm chính
func main() {

	// gọi hàm này
	// hàm trả về hai giá trị
	// được gán cho định danh mul và trống
	mul, _ := mul_div(105, 7)

	// chỉ dùng biến mul
	fmt.Println("105 x 7 = ", mul)
}

// hàm trả về hai giá trị
// của kiểu integer 
func mul_div(n1 int, n2 int) (int, int) {

	// trả về giá trị này
	return n1 * n2, n1 / n2
}

結果:

105 x 7 =  735

覚えておくべき重要なポイント:

  • 同じプログラム内で複数の空白識別子を使用できます。つまり、Golang プログラムでは、同じ識別子名空白を使用して複数の変数を持つことができると言えます。
  • プログラム内のどこでも値が使用されないことが判明している場合でも、構文を完成するためだけに値を割り当てる必要がある場合が多くあります。複数の値を返す関数のようなものです。このようなケースのほとんどでは、空の識別子が使用されます。
  • 空白識別子では、任意のタイプの任意の値を使用できます。
Sign up and earn $1000 a day ⋙

Leave a Comment

Goのキーワード

Goのキーワード

キーワード - キーワードは、何らかの内部プロセスに使用されるか、何らかの事前定義されたアクションを表す言語の単語です。 Golang のキーワードについて知っておくべきことを以下に示します。

Golangのデータ型

Golangのデータ型

データ型は、有効な Go 変数に格納できるデータの型を指定します。 Go 言語では、型は次の 4 つのカテゴリに分類されます。

Golangの関数の引数

Golangの関数の引数

Go は、引数を渡す方法として、値渡しと参照渡しという 2 つの主な方法をサポートしています。 Go では、デフォルトで値渡しが使用されます。

Golangで複数の値を返す関数

Golangで複数の値を返す関数

Go 言語では、return ステートメントを使用して関数から複数の値を返すことができます。つまり、関数では、 return ステートメントは複数の値を返すことができます。

GoのSwitch文

GoのSwitch文

Golang には他のほとんどのプログラミング言語と同様に switch ステートメントがあります。 Golang で switch ステートメントを使用する方法は次のとおりです。

Golangで選択文を使用する際に知っておくべきケース

Golangで選択文を使用する際に知っておくべきケース

この記事では、デッドロックを回避するために default case を使用する方法を学習します。しかし、まず、Golang の select コマンドを使用するときにデッドロックが発生するケースが何であるかを確認しましょう。

Golang の匿名構造体とフィールド

Golang の匿名構造体とフィールド

Golang の匿名構造体は、1 回限りの目的で使用される名前のない一時的な構造体ですが、匿名フィールドでは名前のないフィールドを埋め込むことができます。

GolangでRuneを使う方法

GolangでRuneを使う方法

Golang におけるルーン文字とは何ですか? Golang で Rune を使用するにはどうすればいいですか?この記事でその答えがわかります。

Golangで演算子を使う方法

Golangで演算子を使う方法

演算子を使用すると、オペランドに対してさまざまな種類の演算を実行できます。 Go 言語では、演算子はさまざまな機能に基づいて分類できます。

Golangで基本的なプログラムを作成する方法

Golangで基本的なプログラムを作成する方法

こんにちは世界!あらゆるプログラミング言語における最初の基本プログラムです。この最初のプログラムは、以下の手順に従って Golang で記述できます。

WindowsにGoをインストールする方法

WindowsにGoをインストールする方法

Golang は Windows に簡単にインストールできます。以下は、Windows に Golang をインストールするための詳細なステップバイステップ ガイドです。

Golangにおける同じ名前のメソッド

Golangにおける同じ名前のメソッド

Golang では、同じパッケージ内に同じ名前のメソッドを 2 つ以上作成できますが、これらのメソッドのレシーバーは異なる型である必要があります。

Goにおける変数のスコープ

Goにおける変数のスコープ

Golang における変数のスコープは、その変数にアクセスできるプログラムの部分を決定します。 Go では、すべての識別子にはコンパイル時に決定される語彙スコープがあります。

Golang の制御文 (if、if-else、Nested-if)

Golang の制御文 (if、if-else、Nested-if)

Golang にはどのような条件文がありますか? Go プログラミングで条件文を使用するにはどうすればよいでしょうか?一緒に調べてみましょう!

折りたたみ式スマホの予想外の8つの大きなデメリット

折りたたみ式スマホの予想外の8つの大きなデメリット

折りたたみ式の携帯電話がかなりクールであることは否定できません。しかし、しばらく使用してみると、このデバイスにはいくつかの癖があることがわかりました。折りたたみ式スクリーンの携帯電話の予想外の 5 つの主な欠点をご紹介します。

AdobeはPremiere ProにAIビデオ作成技術を導入します

AdobeはPremiere ProにAIビデオ作成技術を導入します

Adobe は AI ビデオ作成技術を新たな方法で大衆に提供したが、この技術を使った完成した映画はまだ作成されていない。

2025年4月の最新Genshin Impactコード

2025年4月の最新Genshin Impactコード

Genshin Impact 5.5 コードは、原始石、魔法の鉱物、経験値、その他多くの報酬との交換に役立ちます。

IPadをMacのディスプレイとして使う方法

IPadをMacのディスプレイとして使う方法

macOS Catalina と iPadOS には、iPad を Mac のセカンダリディスプレイとして使用できるように設計された Sidecar という新機能のサポートが含まれています。

壁紙 1280、美しい Nokia 1280 の携帯電話の壁紙

壁紙 1280、美しい Nokia 1280 の携帯電話の壁紙

これは Nokia 1280 の壁紙のセットです。1280 の壁紙やブリック フォンの壁紙を取得するためにテキストを送信したことがある場合は、これらの壁紙を見てみてください。

極超音速宇宙飛行機が時速11,115kmに到達

極超音速宇宙飛行機が時速11,115kmに到達

ヴィーナス・エアロスペース社は、最高速度マッハ9に相当する時速11,115キロに達することができる新型極超音速航空機「スターゲイザー」の初画像を公開した。

朝食にバナナを食べると、お腹の張りが軽減される

朝食にバナナを食べると、お腹の張りが軽減される

腹部膨満は誰にでも起こり得ます。幸いなことに、朝食は、腹部膨満感を軽減するのに役立つ食材を食事に加えるのに最適な時間です。その材料はバナナです。

OpenAI、ChatGPTのAI画像生成機能のメジャーアップデートを発表

OpenAI、ChatGPTのAI画像生成機能のメジャーアップデートを発表

OpenAIはChatGPTのAI画像生成機能の注目すべきアップグレードを正式に導入しました。これは、以前のDALL-Eのような別の画像生成モデルを使用する代わりに重要な前進です。

Deepseek、一般的なハードウェア構成で問題なく動作する無料の言語モデルv3をリリース

Deepseek、一般的なハードウェア構成で問題なく動作する無料の言語モデルv3をリリース

中国の AI スタートアップ企業 DeepSeek が、最新の大規模言語モデル (LLM) である DeepSeek-V3-0324 を正式にリリースしました。

Gboardを捨ててSamsungキーボードに切り替える理由

Gboardを捨ててSamsungキーボードに切り替える理由

Gboard は長い間、Android スマートフォンの定番キーボードでした。しかし、最近になって多くの人が Samsung キーボードに切り替え、後戻りしなくなりました。

恋人たちに贈る甘くロマンチックな週末の願い

恋人たちに贈る甘くロマンチックな週末の願い

甘くロマンチックな週末のお祝いを恋人に送りましょう。それらは単なる言葉やメッセージであっても、意味のある霊的な贈り物となり、あなたの関係を強化するのに役立ちます。

ハリー・ポッターのテレビシリーズが成功するには、以下の要素が必要です

ハリー・ポッターのテレビシリーズが成功するには、以下の要素が必要です

HBOのハリー・ポッターのリメイクは2026年に初公開される予定です。テレビ版ハリー・ポッターの成功の理由は次のとおりです。

世界各地のスーパームーンの素晴らしい写真

世界各地のスーパームーンの素晴らしい写真

美しい月の写真はインターネット上では珍しくありません。この記事では、世界で最も美しい月の写真をまとめて紹介します。

AMD Ryzenユーザーは、無料でパフォーマンス向上を図るためにこのBIOSアップデートをインストールすべきです

AMD Ryzenユーザーは、無料でパフォーマンス向上を図るためにこのBIOSアップデートをインストールすべきです

現在、AMD は、パフォーマンスが低迷している主力 CPU ラインの問題に対処するため、1 秒あたりのフレーム数を数フレーム向上できる新しいアップデートを発表しました。

Xの価値は440億ドルから100億ドル以下に下落

Xの価値は440億ドルから100億ドル以下に下落

2022年10月、イーロン・マスクはXを買収するために440億ドルを費やしたが、現在までに同プラットフォームの価値は78.6%下落して約94億ドルとなっている。