Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk Menukar Enum kepada Rentetan dan Sebaliknya dalam C Moden?

Bagaimana untuk Menukar Enum kepada Rentetan dan Sebaliknya dalam C Moden?

DDD
DDDasal
2024-12-22 03:03:14881semak imbas

How to Convert Enums to Strings and Vice Versa in Modern C  ?

Menukar Enum kepada Rentetan dalam C Moden

Untuk menukar enum kepada rentetan dalam C moden , manfaatkan perpustakaan pengepala Magic Enum sahaja untuk refleksi statik pada enum.

#include <magic_enum.hpp>

enum Color { RED = 2, BLUE = 4, GREEN = 8 };

// Convert enum value to string
auto color_name = magic_enum::enum_name(Color::RED);

// Convert string to enum value
std::string color_name = "GREEN";
auto color = magic_enum::enum_cast<Color>(color_name);

Pertimbangan

  • Sihir Enum memerlukan penggodaman khusus pengkompil dan beroperasi dalam julat angka yang dipratentukan, biasanya [-128, 128].
  • Sesuaikan julat untuk semua jenis enum dengan mengubah suai MAGIC_ENUM_RANGE_MIN dan MAGIC_ENUM_RANGE_MAX.
  • >

Atas ialah kandungan terperinci Bagaimana untuk Menukar Enum kepada Rentetan dan Sebaliknya dalam C Moden?. 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