Rumah >pembangunan bahagian belakang >Golang >Mengapa Menggunakan Medan `_ struct{}` Kosong dalam Go Struct?
Tujuan Medan Struktur Kosong dengan Nama Garis bawah
Menguatkuasakan Medan Berkunci dalam Struktur
Dalam Go, terdapat teknik pengekodan yang melibatkan medan struct kosong bernama dengan garis bawah ("_"). Memahami tujuannya adalah penting untuk pembangun.
Masalah:
SomeType struct mengandungi medan "_ struct{}". Apakah yang dicapai?
Jawapan:
Medan struct kosong yang dinamakan dengan garis bawah menguatkuasakan penggunaan medan berkunci semasa mengisytiharkan struct.
Sebagai contoh, struct berikut hanya boleh diisytiharkan dengan medan berkunci:
taip SomeType struct {
Field1 string
Field2 bool
_ struct{}
}
Medan berkunci memastikan bahawa nama medan dinyatakan secara eksplisit semasa instantiasi, meningkatkan kebolehbacaan kod dan mencegah kemungkinan ralat.
bar := SomeType{Field1: "hello", Field2: true} // Dibenarkan
foo := SomeType{"hello", true} // Ralat kompilasi
Atas ialah kandungan terperinci Mengapa Menggunakan Medan `_ struct{}` Kosong dalam Go Struct?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!