Invocation de fonctions de package sans qualificatifs de package dans Go
Dans Go, l'importation de packages permet d'accéder à leurs fonctions et types exportés dans le package d'importation. Cependant, on peut rencontrer des scénarios dans lesquels il est souhaitable d'appeler des fonctions sans utiliser le nom du package.
Importation de période explicite
La spécification Go fournit une solution via la période explicite (. ) import :
<code class="go">package main import . "fmt" // Import package without a name func main() { Println("Hey there") // Invoke fmt.Println without qualifier }</code>
Bien qu'efficace, la communauté Go décourage généralement l'utilisation d'importations de périodes explicites, invoquant des problèmes de lisibilité.
Références au niveau du package
Une approche alternative consiste à déclarer des références au niveau du package à l'aide d'alias de type :
<code class="go">package main import "fmt" var Println = fmt.Println // Reference to fmt.Println as package-level variable type ScanState = fmt.ScanState // Type alias for fmt.ScanState func main() { Println("Hello, playground") // Invoke Println without qualifier }</code>
Cette méthode permet un contrôle explicite sur les fonctions et les types exportés à partir du package importé.
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!