Maison >développement back-end >Golang >Quelle est la différence entre '.' et '_' lors de l'importation de packages en langage Go ?

Quelle est la différence entre '.' et '_' lors de l'importation de packages en langage Go ?

青灯夜游
青灯夜游original
2020-12-08 11:47:274227parcourir

Différence : l'opération "_" n'introduit en fait que le package ; l'utilisation de l'opération "_" pour référencer le package ne peut pas appeler la fonction exportée dans le package via le nom du package, mais consiste simplement à appeler son init () fonction . La signification de l'opération "." est qu'après l'importation de ce package, lorsque vous appelez la fonction de ce package, vous pouvez omettre le nom du package préfixé.

Quelle est la différence entre '.' et '_' lors de l'importation de packages en langage Go ?

L'environnement de démonstration de cet article : système Windows 7, Go version 1.11.2, ordinateur Dell G3.

Recommandations associées : "Tutoriel Golang"

Lors de l'importation de packages dans Golang, nous rencontrons parfois la nécessité d'ajouter un trait de soulignement ou un clic, je Je n'ai jamais compris ce que cela signifiait, alors j'ai immédiatement cherché :

Le package est précédé d'un trait de soulignement_ : L'opération _ introduit en fait simplement le package. Lorsqu'un package est importé, toutes ses fonctions init() seront exécutées, mais parfois vous n'avez pas vraiment besoin d'utiliser ces packages, vous voulez simplement que sa fonction init() soit exécutée. À ce stade, vous pouvez utiliser l’opération _ pour référencer le package. Même si vous utilisez l'opération _ pour référencer un package, vous ne pouvez pas appeler les fonctions exportées dans le package via le nom du package, mais simplement appeler sa fonction init().

Il y a un point avant le package :

import(.“fmt”)

La signification de cette opération point est qu'après l'importation du package, lorsque vous appelez la fonction de ce package, vous pouvez omettre le nom du package préfixé, c'est-à-dire que le fmt.Println("hello world") que vous avez appelé plus tôt peut être omis et écrit comme Println("hello world")

Avant d'importer le point d'utilisation :

Quelle est la différence entre '.' et '_' lors de l'importation de packages en langage Go ?

Quelle est la différence entre '.' et '_' lors de l'importation de packages en langage Go ?

Après l'importation des points d'utilisation :

Quelle est la différence entre '.' et '_' lors de l'importation de packages en langage Go ?

Quelle est la différence entre '.' et '_' lors de l'importation de packages en langage Go ?

Pour plus de connaissances sur la programmation, veuillez visiter :Vidéo de programmation ! !

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!

Déclaration:
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