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

Pourquoi Go inclut-il l'instruction « goto » ?

Barbara Streisand
Libérer: 2024-11-13 16:31:02
original
813 Les gens l'ont consulté

Why Does Go Include the 'goto' Statement?

Utilisation mesurée par Go de l'instruction 'goto'

La curiosité surgit souvent autour de la présence de l'instruction 'goto' dans Go, compte tenu de sa association historique avec l'obscurcissement du code et les complications de flux. On pourrait se demander pourquoi Google a choisi de l'inclure.

En examinant la bibliothèque standard Go, nous trouvons des cas où l'instruction « goto » est utilisée judicieusement.

Par exemple, dans le langage math/gamma. .go, « goto » permet de simplifier le flux de contrôle. Sans cela, le code nécessiterait des variables supplémentaires et des vérifications conditionnelles, le rendant moins lisible et intuitif :

for x < 0 {
    if x > -1e-09 {
        goto small
    }
    z = z / x
    x = x + 1
}
...
small:
    if x == 0 {
        return Inf(1)
    }
    return z / ((1 + Euler*x) * x)
}
Copier après la connexion

Ici, « goto » élimine le besoin d'une variable booléenne temporaire pour suivre le flux, ce qui entraînerait un structure de code plus concise et claire.

Il est important de noter que l'utilisation de « goto » par Go est limitée par des règles spécifiques. 'goto' ne doit pas sauter par-dessus les déclarations de variables ou dans différents blocs de code. Ces restrictions empêchent les abus potentiels de la déclaration tout en conservant son utilité dans des scénarios spécifiques comme celui ci-dessus.

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