Heim >Backend-Entwicklung >Golang >Warum zeigt mein Go-Programm beim Aufruf einer Funktion in einer separaten Datei einen „undefinierten' Fehler an?

Warum zeigt mein Go-Programm beim Aufruf einer Funktion in einer separaten Datei einen „undefinierten' Fehler an?

Patricia Arquette
Patricia ArquetteOriginal
2024-12-17 16:17:09405Durchsuche

Why Does My Go Program Show an

Mehrdeutigkeit der Go-Programmfunktion behoben

Bei dem Versuch, eine in einer separaten Datei definierte Funktion aufzurufen, stieß ein Go-Programm auf eine „undefinierte“ Fehler. Der folgende Code veranschaulicht das Szenario:

Quellcode

main.go

package main

func main() {
    emp := NewEmployee()  // Undefined error
}

employee.go

package main

type Employee struct {
    name string
    age int
}  

func NewEmployee() *Employee {
    // Employee struct and function definitions
}

func PrintEmployee (p *Employee)  {
    // Function definitions
}

Fehler

Beim Ausführen des Programms wird der folgende Fehler angezeigt wird zurückgegeben:

undefined: NewEmployee

Lösung

Der Fehler ist auf unsachgemäße Dateiverarbeitungstechniken zurückzuführen. Um dieses Problem zu beheben:

  • Verwenden Sie „go build“ oder „go install“ im Paketverzeichnis.
  • Alternativ können Sie einen Importpfad für das Paket angeben.

Vermeiden Verwenden von Dateiargumenten für go build oder go install. Für go run können zwar Dateiargumente verwendet werden, im Allgemeinen ist es jedoch ratsam, ein Paket mit go run zu erstellen. Alternativ können Sie sich für go install oder go build entscheiden.

Das obige ist der detaillierte Inhalt vonWarum zeigt mein Go-Programm beim Aufruf einer Funktion in einer separaten Datei einen „undefinierten' Fehler an?. 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