Maison > développement back-end > Golang > le corps du texte

Comment personnaliser les packages en langage Go

Libérer: 2020-06-19 17:51:14
avant
3539 Les gens l'ont consulté

Comment personnaliser les packages en langage Go

Un package est un ensemble de fonctions et de données. Utilisez le mot-clé package pour définir un package.

est principalement utilisé pour organiser le code source Go, offrant une meilleure réutilisabilité et lisibilité. Étant donné que les packages assurent l’encapsulation du code, ils facilitent la maintenance des applications Go.

Créez une instance d'un package personnalisé ci-dessous

Créez le répertoire pac pour stocker le package

mkdir -p $GOPATH/src/test/pac
cd $GOPATH/src/test/pac
Copier après la connexion

Créez un nouveau fichier pac.go

package pac

import "fmt"

func Printstr(x string) {
    fmt.Println(x + " is pac")
}
Copier après la connexion

Ceci est pour faciliter la maintenance, rendre le nom du package et le nom du répertoire cohérents.

Créez un nouveau demo.go pour appeler le package personnalisé

Créez-le dans le répertoire $GOPATH/src/test

package main

import "pac"

func main() {
    pac.Printstr("this")
}
Copier après la connexion

Exécutez

go run demo.go
Copier après la connexion
Copier après la connexion

Sortie c'est pac , qui a réussi

Dans l'exemple ci-dessus, le fichier importé demo.go et le fichier du package pac.go ne sont pas dans le même répertoire et n'appartiennent pas au même package. Alors, comment accéder à deux fichiers appartenant au même package et se trouvant dans le même répertoire ? Voir l'exemple ci-dessous ?

Créez pac2.go

Dans le répertoire $GOPATH/src/test/pac

package pac

import "fmt"

func printstr2 (x string)  {
    fmt.Println(x + " is pac2")
}
Copier après la connexion

Modifiez pac.go et laissez pac.go appeler pac2.go

package pac

func Printstr(x string) {
    //fmt.Println(x + " is pac")
    printstr2(x)
}
Copier après la connexion

Exécuter demo.go

go run demo.go
Copier après la connexion
Copier après la connexion

Résultat de sortie : ceci est pac2

Résumé

1 Si le répertoire du projet ne se trouve pas dans le chemin défini par l'environnement GOPATH. variable, vous devez déplacer le projet vers le chemin GOPATH, ou définir le chemin du projet dans le GOPATH ; sinon il rapportera :

demo.go:3:8: cannot find package "pac" in any of:
    /usr/lib/golang/src/pac (from $GOROOT)
    /home/go/src/pac (from $GOPATH)
Copier après la connexion

2. L'instruction d'importation utilise le nom du dossier.

3. La première lettre du nom de la fonction dans le fichier du package est en majuscule, afin qu'elle puisse être appelée en externe. Si tous les fichiers du même package accèdent les uns aux autres, peu importe que la première lettre du nom de la fonction soit en majuscule ou en minuscule.

4. Le package principal ne peut pas accéder aux autres fichiers du même répertoire ou package principal.

5. Le nom du dossier et le nom du package ne sont pas forcément les mêmes. Pour faciliter la maintenance, il est recommandé d'être cohérent.

6. Utilisez le nom du package et le nom de la fonction pour appeler un package personnalisé, comme dans l'exemple ci-dessus :

pac.Printstr("this")
Copier après la connexion

Pour plus de connaissances connexes, veuillez prêter attention au didacticiel du langage go. colonne

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:csdn.net
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!