Heim  >  Artikel  >  Backend-Entwicklung  >  So passen Sie Pakete in der Go-Sprache an

So passen Sie Pakete in der Go-Sprache an

尚
nach vorne
2020-06-19 17:51:143541Durchsuche

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

Erstellen Sie eine neue Datei pac.go

package pac

import "fmt"

func Printstr(x string) {
    fmt.Println(x + " is pac")
}

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")
}

Führen Sie

go run demo.go

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")
}

Ä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)
}

Führen Sie demo.go aus

go run demo.go

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)

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")

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!

Stellungnahme:
Dieser Artikel ist reproduziert unter:csdn.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen