Rumah >pembangunan bahagian belakang >Golang >Bagaimanakah saya boleh menukar antara struct Go menggunakan pembenaman medan?
Menukar Antara Go Structs
Apabila bekerja dengan berbilang struct, selalunya perlu untuk menukar data daripada satu struct kepada yang lain. Dalam Go, ini boleh dicapai melalui teknik yang dipanggil pembenaman medan.
Pertimbangkan coretan kod berikut:
<code class="go">type A struct { a int b string } type B struct { A // field embedding of A c string // more fields }</code>
Dalam contoh ini, struct B membenamkan struct A. Ini bermakna struct B mengandungi semua medan struct A sebagai tambahan kepada medannya sendiri.
Untuk menukar nilai jenis A kepada jenis B, anda hanya boleh menetapkan medan A kepada medan B. Contohnya:
<code class="go">func main() { structA := A{a: 42, b: "foo"} // assign structA to the embedded A field of structB structB := B{A: structA} }</code>
Melalui pembenaman medan, anda boleh menukar antara struct dengan mudah, menghapuskan keperluan untuk menyalin medan secara manual atau mencipta kaedah penukaran.
Atas ialah kandungan terperinci Bagaimanakah saya boleh menukar antara struct Go menggunakan pembenaman medan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!