Apabila bekerja dengan Go, mematuhi konvensyen yang ditetapkan adalah penting. Walau bagaimanapun, memahami konvensyen ini adalah penting sebelum pelaksanaannya yang berkesan. Artikel ini menangani soalan lazim mengenai struktur pakej Go.
Persediaan: Mengikut struktur projek yang disyorkan, kami mempunyai:
$GOPATH/ src/ github.com/ username/ projectname/ main.go numbers/ rational.go real.go complex.go
main.go:
package main import ( "fmt" "./numbers" ) func main() { fmt.Println(numbers.Real{2.0}) }
Soalan:
1. package.go Fail
Andaian bahawa setiap direktori pakej memerlukan fail package.go adalah tidak betul. Dalam Go, fail dalam satu direktori secara automatik dikumpulkan ke dalam pakej. Membuat fail package.go tidak diperlukan.
2. Mengimport Fail Dalam Pakej
Go tidak menyokong pengimportan fail. Nombor pakej hendaklah diimport terus, bukannya fail individu seperti rational.go, real.go dan complex.go. Dalam contoh kami, alih keluar awalan ./ dan gunakan import "github.com/username/projectname/numbers".
3. Jenis Perkongsian
Jenis seperti Real harus ditakrifkan dalam fail dalam pakej, seperti real.go. Memandangkan fail tergolong dalam pakej yang sama, tiada pernyataan import tambahan diperlukan. Mengakses jenis Real dalam main.go sebagai fmt.Println(numbers.Real{2.0}) adalah betul.
Atas ialah kandungan terperinci Struktur Pakej Go: Adakah Kami Memerlukan Fail `package.go`, Cara Mengimport Fail Dalaman dan Bolehkah Kami Mengakses Jenis Merentas Fail?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!