Tujuan Underscore Medan Struktur Kosong
Dalam Go, adalah mungkin untuk mentakrifkan struct dengan medan bernama "_" yang mengandungi struct kosong. Simpulan bahasa ini menguatkuasakan pemulaan medan berkunci, di mana setiap medan mesti dinamakan secara eksplisit semasa mencipta tika struct.
Contoh Kod
type SomeType struct { Field1 string Field2 bool _ struct{} }
Medan Berkunci Permulaan
Dengan medan struct kosong ini, struct mesti diisytiharkan menggunakan medan berkunci:
// ALLOWED: bar := SomeType{Field1: "hello", Field2: true} // COMPILE ERROR: foo := SomeType{"hello", true}
Faedah
Teknik ini mempunyai beberapa faedah:
Atas ialah kandungan terperinci Mengapa Gunakan Underscore Empty Struct Fields untuk Permulaan Berkunci dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!