follicules go-

forfait introduction

Forfait (  Pénalité Forfait  ) est une collection de code source Go, est un programme de réutilisation de code avancée, la langue Go nous offre beaucoup de paquets intégrés, tels que  fmt  ,  os  ,  IO  et ainsi de suite.

Forfaits sur mesure

Nous pouvons également créer votre propre paquet en fonction de leurs besoins. Un package peut être comprise simplement comme un stockage  de  dossier de fichiers. Le dossier les documents suivants doivent tous aller ajouter le code suivant dans la première ligne de code, indiquant que le fichier package appartient.

Nom du package package

 

précautions:

  1. Le dossier contient un fichier directement ci - dessous peut être attribué à un  paquet  , un même  package  fichier ne peut pas être dans plusieurs dossiers.
  2. Nom du package et le nom du dossier ne peut pas être le même que le nom du package ne peut pas contenir  - symbole.
  3. Package appelé  principal  paquet est une application de saisie de paquets, après quoi le paquet sera un fichier exécutable compilé, le compilateur ne contient pas une  principale  source du paquet ne sera pas exécutable.

visibilité

Si vous souhaitez référencer un paquet dans un paquet quand l' identifiant supplémentaire (par exemple, des variables, des constantes, types, fonctions, etc.), l'identifiant doit être visible à l' extérieur (  public  ). Aller première lettre dans l'identifiant de langue seulement besoin de faire peut être visible un identifiant de capitaux étrangers.

Par exemple, nous définissons un paquet appelé pkg2sac, comme suit:

package PKG2

import " fmt "

// visibilité variable paquet

var A = 100  // première lettre minuscule, non visible à l' extérieur du paquet, le paquet ne peut être utilisé dans le courant

// initiales visible gaine externe, peut être utilisée dans d' autres paquets 
const Mode = 1.

la personne du type struct { // première lettre en minuscule, paquet externe n'est pas visible et ne peut être utilisé dans le courant package 
    nom chaîne
}

// initiales, gaine extérieure visible, peuvent être utilisés dans d' autres paquets 
FUNC Ajouter (X, Y int ) int {
     retour X + Y
}

Âge FUNC () { // première lettre minuscule, non visible à l' extérieur du paquet, le paquet ne peut être utilisé dans le courant 
    var âge = 18 est  // fonction des variables locales, l'emballage extérieur n'est pas visible uniquement dans la fonction actuelle 
    fmt.Println (Age )
}

Les noms de champ struct et méthode interface si la première lettre est en majuscule, package externe peut accéder à ces champs et méthodes. Par exemple:

Étudiant Type struct {
    Nom   de chaîne  // accessible en dehors de la méthode de paquet de 
    classe  chaîne  // champ uniquement des paquets dans l' accès 
}

saisissez Payeur l' interface {
    le init () // Procédé d'accès à la poche uniquement 
    la rémunération ()   // Méthode accessible à l' extérieur du paquet 
}

 

Présentation de l'emballage

Pour faire référence au contenu d'autres paquets dans votre code, utilisez l'  importation  mot - clé dans l'utilisation de l'emballage. syntaxe spécifique est la suivante:

Importation « paquet de route »

précautions:

  1. déclarations d'importation à l'importation sont généralement placés au début de la déclaration de package suivant.
  2. Présentation du nom du package double usage offre enveloppé.
  3. Des forfaits sont de $ GOPATH / src / après dénombrées à l'aide / chemin pour la partition.
  4. Go langue interdisant package d'importation de circulation.

Importation d'une seule ligne

Présentation de format unique en ligne est la suivante:

importation " 包1 " 
importation " 包2 "

 

les importations multilignes

Importation multi-format en ligne est la suivante:

importation (
     " 包1 " 
    " 包2 " 
)

 

Nom du package personnalisé

Lors de l'importation le nom du package, nous pouvons également alias les paramètres de package d'importation. Nom du package des situations de conflit couramment utilisé pour le nom du package importé est trop long ou importés. syntaxe spécifique est la suivante:

alias d'importation « paquet de route »

 

Présentation alias définis à ligne unique

Présentation de manière à ligne unique pour définir un alias:

import " fmt " 
import m " github.com/gbb/studygo/pkg_test "

func main () {
    fmt.Println (m.Add ( 100 , 200 ))
    fmt.Println (m.Mode)
}

 

L'introduction d'une pluralité de rangées de définir des alias

importation multiligne définir un alias:

importation (
     " fmt " 
    m " github.com/gbb/studygo/pkg_test "
 )

func main () {
    fmt.Println (m.Add ( 100 , 200 ))
    fmt.Println (m.Mode)
}

 

Paquet d'importation Anonyme

Si vous ne souhaitez que d'importer le paquet, sans l'utilisation de paquets de données interne, le paquet peut être utilisé pour importer des anonymes. format spécifique est la suivante:

Importation _ « paquet chemin »

package importé anonyme dans des emballages avec d'autres moyens seront compilés dans un fichier exécutable.

initialise de la fonction init ()

fonction init () décrit

Importation instruction package à l'exécution du programme de langue Go paquet de déclenchement automatiquement à l' intérieur  init ()  fonction est appelée. Notez que:   l'init ()  fonction n'a pas de paramètres et renvoie aucune valeur.  init ()  fonction est programme fonctionne automatiquement appelé effectués, il ne peut pas prendre l'initiative d'appeler le code.

séquence d'initialisation de paquets est effectué comme indiqué ci-dessous:

exécution fonction init () afin

Go packs linguistiques seront de la  principale  commencer à vérifier tous les paquets importation de paquets, chaque paquet peut être importé et d' autres paquets. Aller compilateur de construire ainsi une relation de référence paquet en forme d' arbre, et de décider ensuite de compiler une séquence de référence selon la séquence, le code compilé des paquets séquentiellement.

Lors de l' exécution, le package final sera introduit d' abord et appelle son initialisation  () init  fonction, illustré ci - dessous:

 

Je suppose que tu aimes

Origine www.cnblogs.com/DI-DIAO/p/12454696.html
conseillé
Classement