Rumah >pembangunan bahagian belakang >Golang >Bagaimanakah Medan Struktur Kosong Bernama Garis Garis Menguatkuasakan Tugasan Medan Berkunci dalam Go?
Menguatkuasakan Medan Berkunci dengan Medan Struktur Kosong Bernama Underscore
Dalam Go, anda mungkin menemui kod yang menggunakan medan yang kelihatan pelik bernama dengan garis bawah (_) mengandungi kosong struct.
type SomeType struct { Field1 string Field2 bool _ struct{} }
Teknik ini memainkan peranan penting dalam menguatkuasakan medan berkunci semasa mengisytiharkan struct. Pertimbangkan perkara berikut:
type SomeType struct { Field1 string Field2 bool _ struct{} } // Only keyed fields are permitted: bar := SomeType{Field1: "hello", Field2: true} // Compile error: foo := SomeType{"hello", true}
Dengan menggunakan medan struct kosong bernama garis bawah, anda boleh memastikan bahawa semua medan dalam struct mesti ditentukan oleh nama medan yang sepadan. Ini menjadi berguna terutamanya apabila memanjangkan struct pada masa hadapan untuk mengelakkan pecah kod sedia ada yang menganggap tugasan medan berkunci.
Pada asasnya, medan struct kosong yang diberi garis bawah berfungsi sebagai pemegang tempat untuk menguatkuasakan medan berkunci, menyumbang kepada keteguhan dan kebolehselenggaraan kod Go.
Atas ialah kandungan terperinci Bagaimanakah Medan Struktur Kosong Bernama Garis Garis Menguatkuasakan Tugasan Medan Berkunci dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!