نشان دادن محتویات enum به صورت string - هفت خط کد انجمن پرسش و پاسخ برنامه نویسی

نشان دادن محتویات enum به صورت string

0 امتیاز

سلام بر همگی من می خوام محتویات enum رو به string تبدیل کنم

ولی نمی خوام از این روش استفاده کنم :


enum Test {EX1, EX2,EX3};

Test e;
switch e
{
    case EX1: 
        return "aval";
    case EX2: 
        return "dovom";
    case EX3: 
        return "sevom";
    default: 
        return "not found";
}

راهبه تری  برای این کار وجود داره ؟؟

سوال شده اسفند 4, 1392  بوسیله ی سعید (امتیاز 92)   5 16 22

1 پاسخ

+3 امتیاز
 
بهترین پاسخ

میشه به این شکل هم عمل کرد :

#include <iostream>
#include <conio.h>
#include <map>
#include <string>

using namespace std;

enum test{ test1,
           test2,
           test3 };

map <test,string> mapper;

void load_enum_value()
{
    mapper[test1]="Test1";
    mapper[test2]="Test2";
    mapper[test3]="Test3";

}

int main()
{

    load_enum_value();

    cout<<mapper.at(test1)<<"\n";
    cout<<mapper.at(test2)<<"\n";
    cout<<mapper.at(test3);
    getch();
}


 

پاسخ داده شده اسفند 4, 1392 بوسیله ی returnx (امتیاز 138)   1 2 7
انتخاب شد اسفند 9, 1392 بوسیله ی سعید
...