Maison >développement back-end >Golang >Comment résoudre les erreurs « adresse mémoire invalide ou déréférencement de pointeur nul » dans Go Maps ?
adresse mémoire invalide ou déréférencement de pointeur nul dans Go map[string]*type
Lorsque vous essayez d'accéder à une valeur dans une carte, vous peut rencontrer l’erreur « adresse mémoire invalide ou déréférencement de pointeur nul ». Cette erreur se produit lorsque la clé interrogée n'existe pas dans la carte ou si la valeur stockée sur cette clé est un pointeur nul.
Dans ce cas spécifique, le code tente d'accéder à la clé "id" dans la carte "état". Cependant, la carte « condition » est initialisée comme une carte vide sans aucune paire clé-valeur. Ainsi, lorsque l'on tente d'accéder à "condition['id']", la clé n'existe pas et on tente d'accéder à un pointeur nul. Cela entraîne l'erreur « Adresse mémoire invalide ou déréférencement de pointeur nul ».
Pour résoudre ce problème, vous pouvez initialiser la carte « condition » et définir la valeur de la clé « id » avant de tenter d'y accéder. Voici un exemple :
// Initialize the condition map condition = make(map[string]*guardduty.Condition) // Set the value of the "id" key condition["id"] = &guardduty.Condition{ Equals: aws.StringSlice(findingId), }
Après avoir initialisé la carte et défini la valeur de la clé "id", vous pouvez désormais y accéder en toute sécurité sans rencontrer l'erreur.
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!