Maison >développement back-end >Golang >Pourquoi ne pouvons-nous pas déclarer des cartes constantes dans Go ?

Pourquoi ne pouvons-nous pas déclarer des cartes constantes dans Go ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-11-12 21:40:03496parcourir

Why Can't We Declare Constant Maps in Go?

Const Maps dans Go : pourquoi elles ne sont pas autorisées

Dans Go, déclarer une carte constante comme suit peut déclencher une erreur :

const (
    running = map[string]string{
        "one": "ONE",
        "two": "TWO",
    }
)

Cela soulève la question : pourquoi Go n'autorise-t-il pas les cartes const ?

Selon la spécification officielle du langage Go, les valeurs constantes valides incluent des types numériques (rune, entier, virgule flottante , imaginaire), les chaînes, les booléens et certains résultats de fonctions intégrées. Cependant, les cartes, les tableaux et les tranches ne sont pas considérés comme des types numériques.

Par conséquent, alors que les types numériques, les chaînes et les booléens peuvent être définis comme des constantes, les structures de données composites telles que les cartes ne le peuvent pas. En effet, les constantes doivent se voir attribuer des valeurs immuables et connues au moment de la compilation, ce qui est une caractéristique que les cartes ne possèdent pas.

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