So passen Sie Pakete in der Go-Sprache an

Freigeben: 2020-06-19 17:51:14
nach vorne
3539 Leute haben es durchsucht

So passen Sie Pakete in der Go-Sprache an

Ein Paket ist eine Sammlung von Funktionen und Daten. Verwenden Sie das Schlüsselwort package, um ein Paket zu definieren.

wird hauptsächlich zum Organisieren des Go-Quellcodes verwendet, um eine bessere Wiederverwendbarkeit und Lesbarkeit zu gewährleisten. Da Pakete eine Kapselung des Codes ermöglichen, erleichtern sie die Wartung von Go-Anwendungen.

Erstellen Sie unten eine Instanz eines benutzerdefinierten Pakets

Erstellen Sie das Verzeichnis pac zum Speichern des Pakets

mkdir -p $GOPATH/src/test/pac
cd $GOPATH/src/test/pac
Nach dem Login kopieren

Erstellen Sie eine neue Datei pac.go

package pac

import "fmt"

func Printstr(x string) {
    fmt.Println(x + " is pac")
}
Nach dem Login kopieren

Dies Um die Wartung zu vereinfachen, sollten der Paketname und der Verzeichnisname konsistent sein.

Erstellen Sie ein neues demo.go, um das angepasste Paket aufzurufen

Erstellen Sie es im Verzeichnis $GOPATH/src/test

package main

import "pac"

func main() {
    pac.Printstr("this")
}
Nach dem Login kopieren

Führen Sie

go run demo.go
Nach dem Login kopieren
Nach dem Login kopieren

Ausgabe aus das ist pac , hat sich als erfolgreich erwiesen

Im obigen Beispiel befinden sich die importierte Datei demo.go und die Paketdatei pac.go nicht im selben Verzeichnis und gehören nicht zum selben Paket. Wie greife ich also auf zwei Dateien zu, die zum selben Paket gehören und sich im selben Verzeichnis befinden? Siehe das Beispiel unten.

Erstellen Sie pac2.go

Im Verzeichnis $GOPATH/src/test/pac

package pac

import "fmt"

func printstr2 (x string)  {
    fmt.Println(x + " is pac2")
}
Nach dem Login kopieren

Ändern Sie pac.go und lassen Sie pac.go pac2.go aufrufen

package pac

func Printstr(x string) {
    //fmt.Println(x + " is pac")
    printstr2(x)
}
Nach dem Login kopieren

Führen Sie demo.go aus

go run demo.go
Nach dem Login kopieren
Nach dem Login kopieren

Ausgabeergebnis: Dies ist pac2

Zusammenfassung

1. Wenn sich das Projektverzeichnis nicht im von der GOPATH-Umgebung festgelegten Pfad befindet Variable, Sie müssen das Projekt in den GOPATH-Pfad verschieben oder den Projektpfad im GOPATH festlegen; andernfalls wird Folgendes gemeldet:

demo.go:3:8: cannot find package "pac" in any of:
    /usr/lib/golang/src/pac (from $GOROOT)
    /home/go/src/pac (from $GOPATH)
Nach dem Login kopieren

2. Die Importanweisung verwendet den Namen des Ordners.

3. Der erste Buchstabe des Funktionsnamens in der Paketdatei wird großgeschrieben, damit er extern aufgerufen werden kann. Wenn alle Dateien im selben Paket aufeinander zugreifen, spielt es keine Rolle, ob der erste Buchstabe des Funktionsnamens groß oder klein geschrieben ist.

4. Das Hauptpaket kann nicht auf dasselbe Verzeichnis oder andere Dateien im selben Hauptpaket zugreifen.

5. Der Name des Ordners und der Name des Pakets sind nicht unbedingt identisch. Aus Gründen der Wartungsfreundlichkeit wird empfohlen, konsistent zu sein.

6. Verwenden Sie den Paketnamen und den Funktionsnamen, um ein benutzerdefiniertes Paket aufzurufen, wie im obigen Beispiel:

pac.Printstr("this")
Nach dem Login kopieren

Weitere Informationen zu diesem Thema finden Sie im go-Sprach-Tutorial Spalte

Das obige ist der detaillierte Inhalt vonSo passen Sie Pakete in der Go-Sprache an. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:csdn.net
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!