Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk Menukar Sekeping Struktur kepada Sekeping Antara Muka Kosong dalam Go?

Bagaimana untuk Menukar Sekeping Struktur kepada Sekeping Antara Muka Kosong dalam Go?

Patricia Arquette
Patricia Arquetteasal
2024-12-10 13:07:10310semak imbas

How to Convert a Slice of Structs to a Slice of Empty Interfaces in Go?

Menukar Sekeping Struktur menjadi Sekeping Antara Muka Kosong

Apabila menghantar data ke stor data AppEngine.PutMulti fungsi, ia memerlukan sekeping []antara muka{}. Walau bagaimanapun, ini boleh membawa kepada ralat penyusunan jika anda cuba menetapkan sekeping struct, []*MyStruct, kepada hirisan []antara muka{}.

Ralat timbul kerana pengkompil Go menganggap kedua-dua jenis ini tidak serasi , mengakibatkan kegagalan untuk menetapkan src kepada dest.

Penyelesaian

Malangnya, tiada cara langsung untuk menyalin sekeping struct ke dalam sekeping antara muka kosong tanpa menyalin setiap elemen secara individu. Ini kerana menghantar struct ke antara muka mencipta versi balut struct. Antara muka mengandungi penunjuk kepada jenis asal dan deskriptor untuk jenis itu sendiri. Oleh itu, untuk membalut setiap struct dengan betul, anda mesti menyalinnya satu demi satu.

Atas ialah kandungan terperinci Bagaimana untuk Menukar Sekeping Struktur kepada Sekeping Antara Muka Kosong dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn