Maison >développement back-end >Golang >Comment accéder aux variables au niveau du package lorsqu'une variable au niveau de la fonction portant le même nom existe dans Go ?

Comment accéder aux variables au niveau du package lorsqu'une variable au niveau de la fonction portant le même nom existe dans Go ?

Patricia Arquette
Patricia Arquetteoriginal
2024-11-16 22:19:03330parcourir

How to Access Package-Level Variables When a Function-Level Variable with the Same Name Exists in Go?

Accès aux variables de niveau constante ou au niveau du package via les variables au niveau de la fonction

Dans Go, il est courant de déclarer des constantes ou des variables au niveau du package niveau, les rendant accessibles tout au long du package. Cependant, lorsqu'une variable est également déclarée au niveau de la fonction, elle a priorité sur la variable au niveau du package dans la portée de la fonction.

Comment pouvons-nous faire référence à la variable constante ou au niveau du package au lieu de la fonction- variable de niveau dans de tels cas ?

Explication

Malheureusement, il n'existe aucun moyen simple de faire référence au niveau du package variable lorsqu'une variable de niveau fonction portant le même nom est présente. Selon la spécification Go, tout identifiant déclaré dans un bloc, y compris les fonctions, a priorité sur les identifiants déclarés au niveau du package dans la portée de ce bloc.

Solutions de contournement

Pour accéder simultanément aux variables au niveau du package et au niveau de la fonction, envisagez les solutions de contournement suivantes :

1. Utilisez des noms différents

Si possible, utilisez des noms différents pour les variables au niveau de la fonction et au niveau du package afin d'éviter les conflits. Cela vous permet d'accéder aux deux variables indépendamment.

2. Enregistrer une copie de la variable au niveau du package

Avant d'attribuer une valeur à la variable au niveau de la fonction, stockez une copie de la variable au niveau du package dans une nouvelle variable avec un nom différent. De cette façon, vous pouvez faire référence à la variable au niveau du package même dans le cadre de la fonction.

3. Créer une fonction

Une autre approche consiste à créer une fonction qui renvoie la valeur de la variable au niveau du package. Cela vous permet d'accéder à la variable au niveau du package en appelant la fonction dans la portée de la variable au niveau de la fonction.

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!

Déclaration:
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