Heim > Artikel > Backend-Entwicklung > Wie rufe ich Funktionen aus einem externen Paket in Go auf?
Aufrufen von Funktionen aus einem externen Paket in Go
Bei der Arbeit mit modularem Code in Go treten Szenarien auf, in denen es notwendig wird, auf definierte Funktionen zuzugreifen in separaten Paketen. Dieses Handbuch bietet eine umfassende Lösung zum Aufrufen einer Funktion aus einem anderen Paket in Go.
Im bereitgestellten Beispiel haben wir zwei Dateien: main.go unter dem Hauptpaket und Functions.go unter einem Paket namens „functions“. Das Ziel besteht darin, über das Funktionspaket in der Hauptfunktion in main.go auf die Funktion getValue() zuzugreifen.
Importieren des Pakets
Zugriff auf eine Funktion von einer anderen Um ein Paket zu erstellen, müssen Sie das Paket zunächst in Ihren eigenen Code importieren. Dazu fügen Sie am Anfang Ihrer Codedatei eine Importanweisung hinzu:
import "MyProj/functions"
Ersetzen Sie MyProj durch den tatsächlichen Importpfad des Pakets, das die Funktion enthält, die Sie aufrufen möchten.
Funktion aufrufen
Sobald Sie das Paket importiert haben, können Sie auf die exportierten Symbole (Funktionen oder Variablen) verweisen, indem Sie den Paketnamen gefolgt von einem Punkt und dem Symbolnamen verwenden:
functions.GetValue()
In diesem Fall ist GetValue() eine exportierte Funktion im Funktionspaket.
Hinweis:Exportierte Symbole in Go beginnen mit einem Großbuchstaben, während nicht exportierte Symbole beginnen mit einem Kleinbuchstaben.
Vollständiger Code:
Hier ist die aktualisierte main.go-Datei mit den notwendigen Änderungen:
package main import ( "fmt" "MyProj/functions" ) func main() { returnedValue := functions.GetValue() fmt.Println(returnedValue) }
Dieser Code wird importiert das Funktionspaket und ruft die Funktion GetValue() auf, um ihren Rückgabewert auf der Konsole auszugeben.
Das obige ist der detaillierte Inhalt vonWie rufe ich Funktionen aus einem externen Paket in Go auf?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!