Maison >développement back-end >Golang >Pourquoi mon code Go génère-t-il une erreur « Impossible d'attribuer m2 à Map[interface{}]interface{} » ?
Dans votre code, vous avez rencontré une erreur liée au type compatibilité entre une carte utilisée dans la fonction Touches et la carte à laquelle vous essayez d'accéder :
cannot use m2 (type map[int]interface {}) as type map[interface {}]interface {} in argument to Keys
Pour résoudre ce problème, vous devez garder à l'esprit le suivant :
Dans votre code, la fonction Keys est définie pour fonctionner avec une carte de type map[interface{}]interface{}, tandis que vous utilisez une carte de type map[int]interface{}. Ces types ne sont pas compatibles car les types de clés sont différents.
Il existe plusieurs façons de résoudre ce problème :
Option 1 : Modifier le Fonction des touches
func Keys(m map[int]interface{}) []interface{} { // Implement function }
Option 2 : Modifier la carte
m2 := map[interface{}]interface{}{ 2: "string", 3: "int", }
Option 3 : Utiliser la réflexion (pas Recommandé)
N'oubliez pas que la compatibilité des types est cruciale dans Golang. Assurez-vous que les types de votre code correspondent aux types attendus pour éviter de telles erreurs.
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!