Heim  >  Artikel  >  Backend-Entwicklung  >  Wie behebe ich die Fehler „Importiert und nicht verwendet' und „Undefiniert' beim Importieren von Typen in Go?

Wie behebe ich die Fehler „Importiert und nicht verwendet' und „Undefiniert' beim Importieren von Typen in Go?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-11-14 13:35:02928Durchsuche

How to Resolve

Pakete und Typen importieren

Bei der Arbeit an einem Projekt ist es oft notwendig, Pakete und Typen aus anderen Modulen oder anderen Teilen davon zu importieren das gleiche Projekt. In Go wird zu diesem Zweck die Importanweisung verwendet.

Bedenken Sie die folgende Projektstruktur:

src
├── config
    └── config.go
├── otherPackage
    └── otherFile.go
├── main.go

Angenommen, config.go enthält einen Typ namens Config, den Sie in otherFile verwenden möchten. gehen. Nach dem Import des Konfigurationspakets können folgende Probleme auftreten:

  • „importiert und nicht verwendet“
  • „undefiniert: Konfiguration“

Der Grund Der Grund für diese Fehler liegt darin, dass in otherFile.go nicht explizit auf den Typ Config verwiesen wird. Um dieses Problem zu beheben, müssen Sie den Typnamen mit dem Paketnamen qualifizieren. Da das Konfigurationspaket als „config“ importiert wird, würden Sie config.Config verwenden, um auf den Typ zu verweisen.

Wenn Sie jedoch eine Variable mit dem Namen „config“ in otherFile.go haben, wird dadurch das importierte Paket gespiegelt , wodurch config.Config mehrdeutig wird. Um dies zu vermeiden, benennen Sie Ihre Variable um (z. B. in „cfg“) oder importieren Sie das Paket „config“ mit einem Alias ​​(z. B. „import c „full/import/path/of/config““ und verwenden Sie dann „c.Config ").

Das obige ist der detaillierte Inhalt vonWie behebe ich die Fehler „Importiert und nicht verwendet' und „Undefiniert' beim Importieren von Typen in Go?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn