ホームページ >バックエンド開発 >Golang >Go の iota を定数に使用しているときに値をスキップするにはどうすればよいですか?

Go の iota を定数に使用しているときに値をスキップするにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-11-29 07:58:14474ブラウズ

How Can I Skip Values While Using Go's iota for Constants?

定数値に iota を使用するときに値をスキップするにはどうすればよいですか?

Go では、iota を使用して定数のグループを作成するときに、空白を使用して値を手動でスキップできます。識別子 _ を使用するか、定数に特定の値を割り当てて新しいグループを開始します。

手動Offset

特定の数の値をスキップするには、次の構文を使用します。

const (
    APPLE = iota
    ORANGE
    PEAR
    _                    // Skip one value
    _                    // Skip another value
    BANANA = 99         // Assign a specific value
    GRAPE                // Continue incrementing iota
)

定数グループの分割

後続の定数の値に影響を与えないようにするには、定数グループを分割します。定数グループを作成し、新しいグループを開始します:

const (
    APPLE = iota
    ORANGE
    PEAR
)

const (
    BANANA = iota + 99  // Reset iota to 0 and skip 98 values
    GRAPE                // Continue incrementing iota
)

自動Offset

前の 2 つのメソッドの要素を結合します。

const (
    APPLE = iota
    ORANGE
    PEAR

    _BREAK = iota          // Break the group and save the current iota value
    _                    // Skip another value

    BANANA = iota - _BREAK + 98  // Subtract the skipped values from iota
    GRAPE                // Continue incrementing iota
)

このアプローチにより、後続の定数の順序を維持しながら、特定の数の値をスキップできます。

推奨事項

最適なアプローチは、具体的な内容によって異なります。要件:

  • 単一グループ、手動オフセット: グループ内の予測可能な数の値をスキップする場合。
  • 定数グループの分割: 後続の定数の値に影響を与えたくない場合。
  • 単一グループ、自動オフセット: グループを壊さずに値を正確にスキップします。

以上がGo の iota を定数に使用しているときに値をスキップするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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