Avatar ·

Comment déclarer une map constante en Go ?

Bonjour à tous ! Je viens de commencer à étudier Go et j'ai rencontré un problème. Je dois déclarer une map dont les valeurs ne doivent pas changer pendant l'exécution du programme. En gros, cela devrait être une constante. Dans d'autres langages, comme C++ ou Java, on peut faire `static final` ou `const`. En Go, je sais qu'il y a le mot-clé `const`, mais quand j'essaie de déclarer une map avec, le compilateur génère une erreur. Voici ce que j'ai essayé : ```go const myMap = map[string]int{ "apple": 5, "banana": 3, } ``` Le compilateur dit : `const initializer map[string]int{...} is not a constant`. Je comprends que Go est strict avec les constantes, mais comment déclarer une map immuable ? J'ai besoin que cette map soit accessible depuis différentes parties du programme, mais que personne ne puisse la modifier (ajouter/supprimer des éléments ou changer les valeurs). J'ai entendu dire qu'on peut utiliser des fonctions d'initialisation ou encapsuler la map dans une structure, mais je ne sais pas quelle approche est considérée comme correcte dans la communauté Go. Merci de m'aider !