Mengimport Pakej dengan Kesan Sampingan dalam Go
Apabila memeriksa kod yang menggunakan perpustakaan go-sqlite3, seseorang mungkin menghadapi kenyataan import dengan gariskan di hadapannya, serupa dengan yang berikut:
import ( "database/sql" "fmt" _ "github.com/mattn/go-sqlite3" "log" "os" )
Penggunaan ini garis bawah ialah kaedah dalam Go untuk mengimport pakej semata-mata untuk kesan sampingannya. Seperti yang digariskan dalam Spesifikasi Go:
To import a package solely for its side-effects (initialization), use the blank identifier as explicit package name: import _ "lib/math"
Contoh: Go-sqlite3 Initialization
Dalam kes go-sqlite3, import garis bawah ini berfungsi untuk tujuan pendaftaran pemacu sqlite3 sebagai pemacu pangkalan data melalui fungsi init(), tanpa perlu mengimport sebarang fungsi lain daripada pakej:
sql.Register("sqlite3", &SQLiteDriver{})
Setelah didaftarkan, pemacu sqlite3 boleh digunakan dengan antara muka sql perpustakaan standard, seperti yang dilihat dalam contoh berikut:
db, err := sql.Open("sqlite3", "./foo.db")
Atas ialah kandungan terperinci Mengapa Menggunakan Garis Garis Semasa Mengimport Pakej dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!