Maison >développement back-end >Golang >Pourquoi GoLand affiche-t-il des erreurs « Référence non résolue » pour un code Go valide ?
Erreur de référence non résolue de l'IDE GoLand malgré un code valide
Les utilisateurs de l'IDE GoLand de JetBrains rencontrent parfois un message d'erreur « référence non résolue » pour le code qui compile et fonctionne correctement. Ce problème est particulièrement déroutant lorsque la référence est valide et que les méthodes sont définies à proximité.
Un exemple spécifique est le code suivant :
package main import ( "fmt" ) type MyBoxItem struct { Name string } type MyBox struct { Items []MyBoxItem } func (box *MyBox) AddItem(item MyBoxItem) { box.Items = append(box.Items, item) } func main() { item1 := MyBoxItem{Name: "Test Item 1"} item2 := MyBoxItem{Name: "Test Item 2"} box := MyBox{} box.AddItem(item1) box.AddItem(item2) // checking the output fmt.Println(len(box.Items)) fmt.Println(box.Items) }
Malgré l'implémentation correcte de la méthode AddItem dans MyBox tapez, GoLand marque box.AddItem(item1) et box.AddItem(item2) en rouge, indiquant une référence non résolue à "AddItem."
Solution :
Comme suggéré par un utilisateur ayant rencontré un problème similaire, l'invalidation des caches et le redémarrage de GoLand peuvent résoudre l'erreur. Pour ce faire :
Le redémarrage de GoLand après cette action devrait éliminer l'erreur « référence non résolue » pour le code concerné. Cette solution s'est avérée efficace dans plusieurs cas.
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!