Mengatasi Isu Medan Pendua Apabila Membenamkan Dua Struktur Sama Nama
Membenamkan berbilang jenis dengan nama yang sama dalam satu struct boleh mengakibatkan isu lapangan pendua. Ini jelas apabila cuba membenamkan kedua-dua stor SQL dan stor fail dalam struktur stor data, yang membawa kepada medan "Kedai" yang berlebihan.
Pendekatan Alternatif: Taip Alias
Untuk menyelesaikan konflik ini, pertimbangkan untuk menggunakan alias jenis. Ini melibatkan penciptaan nama baharu untuk jenis terbenam, dengan berkesan mencipta ejaan ganti untuk jenis asal.
Sebagai contoh, dalam contoh yang diberikan, anda boleh menentukan alias jenis yang dipanggil "SqlStore" untuk mewakili gedung SQL :
<code class="go">type SqlStore = sql.Store</code>
Setelah alias ditubuhkan, struct stor data boleh membenamkan "SqlStore" bersama-sama dengan FileStore:
<code class="go">type datastore struct { *SqlStore *file.Store }</code>
Dengan menggunakan alias jenis, nama medan yang bercanggah dielakkan , kerana alias mencipta ejaan yang berbeza untuk jenis kedai SQL terbenam, menyelesaikan isu medan pendua.
Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan Isu Medan Pendua Apabila Membenamkan Struktur Bernama Sama?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!