Maison > développement back-end > Golang > le corps du texte

Comment ignorer efficacement des valeurs en utilisant Iota dans les constantes Go ?

Linda Hamilton
Libérer: 2024-11-21 18:13:18
original
994 Les gens l'ont consulté

How to Efficiently Skip Values Using Iota in Go Constants?

Comment ignorer efficacement des valeurs lors de la définition de constantes avec Iota dans Go ?

Dans Go, iota est un générateur de constantes qui vous permet de définir plusieurs constantes de manière séquentielle. Cependant, que se passe-t-il si vous devez ignorer un nombre important de valeurs au cours de ce processus ?

Groupe unique, décalage manuel

L'approche la plus simple consiste à décaler l'iota avec une constante, en laissant les expressions d'initialisation ultérieures vide. Par exemple :

const (
    APPLE = iota
    ORANGE
    PEAR
    BANANA = iota + 96 // 96 is manually calculated to get 99
    GRAPE
)
Copier après la connexion

Cela ignorera 96 ​​valeurs avant d'attribuer 99 à BANANA. Cependant, notez que l'ajout d'éléments avant BANANA affectera les valeurs de BANANA et les constantes suivantes.

Casser le groupe de constantes

Si vous devez éviter cette dépendance, vous pouvez briser le groupe de constantes et commencer un nouveau. La valeur d'Iota est réinitialisée à 0 lors de la rencontre du mot réservé const. Par exemple :

const (
    APPLE = iota
    ORANGE
    PEAR
)
const (
    BANANA = iota + 99 // iota is reset to 0
    GRAPE
)
Copier après la connexion

Cette méthode garantit que l'insertion d'éléments avant BANANA ne modifiera pas les valeurs de BANANA et les constantes suivantes.

Groupe unique, décalage automatique

Pour maintenir un seul groupe de constantes tout en sautant des valeurs, introduisez une constante à l'endroit où vous souhaitez rompre la numérotation. Soustrayez sa valeur de iota dans la ligne suivante.

const (
    APPLE = iota
    ORANGE
    PEAR

    _BREAK

    BANANA = iota - _BREAK + 98 // Continues from 98 + 1 = 99
    GRAPE
)
Copier après la connexion

Vous pouvez également initialiser _BREAK avec iota 1, en faisant du décalage à appliquer la valeur de _BREAK lui-même.

const (
    APPLE = iota
    ORANGE
    PEAR

    _BREAK = iota + 1

    BANANA = iota - _BREAK + 99 // Continues from 99
    GRAPE
)
Copier après la connexion

Sélectionnez l'approche qui convient le mieux à votre structure de code et à vos préférences pour ignorer efficacement les valeurs lors de la définition de constantes avec iota dans Go.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal