Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk Mensiri dan Menyahseri Kelas C dengan Jenis Data Tersuai?
Matlamatnya adalah untuk mensiri dan menyahsiri kelas C Mangga yang mengandungi ahli jenis data tersuai.
Pelaksanaan yang dicadangkan termasuk fungsi berikut:
<code class="cpp">std::vector<uint8_t> serialize(Mango const& Man); Mango deserialize(std::span<uint8_t const> data); void serialize_to_stream(std::ostream& os, Mango const& Man); void deserialize(std::istream& is, Mango& Man);</code>
Penyesuaian diperlukan untuk semua jenis yang berkaitan (termasuk ValType, FuntionMango, MangoType dan Mango):
<code class="cpp">// Define `do_generate` and `do_parse` functions // for custom data types.</code>
<code class="cpp">void serialize_to_stream(std::ostream& os, Mango const& Man) { do_generate(std::ostreambuf_iterator<char>(os), Man); } void deserialize(std::istream& is, Mango& Man) { Man = {}; // clear it! std::istreambuf_iterator<char> f(is), l{}; if (!do_parse(f, l, Man)) throw std::runtime_error("deserialize"); }</code>
Contoh Langsung:
https://coliru.stacked-crooked.com/a/288829ec964a3ca9
Atas ialah kandungan terperinci Bagaimana untuk Mensiri dan Menyahseri Kelas C dengan Jenis Data Tersuai?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!