ホームページ > バックエンド開発 > Golang > なぜ golang には列挙がないのでしょうか?

なぜ golang には列挙がないのでしょうか?

(*-*)浩
リリース: 2019-12-31 10:59:31
オリジナル
4266 人が閲覧しました

なぜ golang には列挙がないのでしょうか?

C# や Java などの高級言語では、状態などを表すために列挙型がよく使用されます。

golang には列挙型がありません。const を使用して列挙型をシミュレートできます。 (推奨学習: go)

列挙では、Integer、Long、Short、Byte のいずれかのデータ型に基づいて新しい型の変数を作成できます。このような変数は、定義されたセットの 1 つに設定できるため、ユーザーが無効な値を指定することを効果的に防止できます。この変数は特定の値を説明するため、コードがより明確になります。

type PolicyType int32const (
    Policy_MIN      PolicyType = 0
    Policy_MAX      PolicyType = 1
    Policy_MID      PolicyType = 2
    Policy_AVG      PolicyType = 3)
}
ログイン後にコピー

ここでは新しいタイプ PolicyType が定義されており、4 つの定数 (Policy_MIN、Policy_MAX、Policy_MID、Policy_AVG) が定義されています。

使用例

func foo(p PolicyType) {
    fmt.Printf("enum value: %v\n", p)}func main() {
    foo(Policy_MAX)}
ログイン後にコピー

実行結果

$ go build && ./main
enum value: 1
ログイン後にコピー

以上がなぜ golang には列挙がないのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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