Cara Cekap Memetakan C Enum kepada Rentetan
Apabila bekerja dengan C enums, anda mungkin menghadapi keperluan untuk menukar nilainya kepada pengguna- rentetan yang ditentukan atau sebaliknya. Walaupun pendekatan brute force boleh melibatkan satu siri pernyataan suis, terdapat lebih banyak penyelesaian elegan yang tersedia.
Menggunakan Std::map
Kaedah yang boleh dipercayai untuk pemetaan enum kepada rentetan ialah menggunakan std::map
Gula Sintaksis: Kelas Pembantu Map_init
Untuk kebolehbacaan yang dipertingkatkan, pertimbangkan untuk menggunakan kelas map_init. Kelas ini memulakan peta dan menyediakan sintaks yang mudah untuk menambah entri:
Kelas ini menggunakan struct map_init_helper yang membenarkan rantaian entri.
Leveraging Boost::assign
Jika anda memilih untuk tidak membuat pembantu tersuai, anda boleh menggunakan Boost::assign library, yang menawarkan kefungsian serupa untuk kedua-dua peta dan struktur seperti peta yang lain.
Kesimpulan
Walaupun teknik yang diterangkan di sini mungkin tidak ringkas seperti menggunakan RTTI, mereka menawarkan pendekatan yang lebih disesuaikan dan fleksibel untuk memetakan C enum kepada rentetan, memenuhi keperluan khusus seperti perwakilan rentetan tersuai dan kemudahan penyelenggaraan.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memetakan C Enum dengan Cekap kepada Rentetan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!