Maison > développement back-end > Golang > Pourquoi utiliser des traits de soulignement lors de l'importation de packages dans Go ?

Pourquoi utiliser des traits de soulignement lors de l'importation de packages dans Go ?

Mary-Kate Olsen
Libérer: 2024-12-24 14:43:10
original
907 Les gens l'ont consulté

Why Use Underscores When Importing Packages in Go?

Importation de packages avec effets secondaires dans Go

Lors de l'examen du code qui utilise la bibliothèque go-sqlite3, on peut rencontrer une instruction d'importation avec un soulignement qui le précède, semblable à ce qui suit :

import (
        "database/sql"
        "fmt"
        _ "github.com/mattn/go-sqlite3"
        "log"
        "os"
)
Copier après la connexion

Cette utilisation du trait de soulignement est une méthode dans Go pour l'importation un package uniquement pour ses effets secondaires. Comme indiqué dans la spécification Go :

To import a package solely for its side-effects (initialization), use the blank identifier as explicit package name:

import _ "lib/math"
Copier après la connexion

Exemple : initialisation de go-sqlite3

Dans le cas de go-sqlite3, cette importation de trait de soulignement sert à enregistrer le pilote sqlite3 en tant que pilote de base de données via la fonction init(), sans qu'il soit nécessaire d'importer d'autres fonctions depuis le package :

sql.Register("sqlite3", &SQLiteDriver{})
Copier après la connexion

Une fois enregistré, le pilote sqlite3 peut être utilisé avec l'interface SQL de la bibliothèque standard, comme le montre l'exemple suivant :

db, err := sql.Open("sqlite3", "./foo.db")
Copier après la connexion

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!

source:php.cn
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal