久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

有沒有一種簡單的方法可以將 C++ 枚舉轉換為字符

Is there a simple way to convert C++ enum to string?(有沒有一種簡單的方法可以將 C++ 枚舉轉換為字符串?)
本文介紹了有沒有一種簡單的方法可以將 C++ 枚舉轉換為字符串?的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

問題描述

假設我們有一些命名的枚舉:

Suppose we have some named enums:

enum MyEnum {
      FOO,
      BAR = 0x50
};

我用谷歌搜索的是一個腳本(任何語言),它掃描我項目中的所有標題并生成一個每個枚舉一個函數的標題.

What I googled for is a script (any language) that scans all the headers in my project and generates a header with one function per enum.

char* enum_to_string(MyEnum t);

還有一個類似這樣的實現:

And a implementation with something like this:

char* enum_to_string(MyEnum t){
      switch(t){
         case FOO:
            return "FOO";
         case BAR:
            return "BAR";
         default:
            return "INVALID ENUM";
      }
 }

問題在于 typedefed 枚舉和未命名的 C 風格枚舉.有人對此有所了解嗎?

The gotcha is really with typedefed enums, and unnamed C style enums. Does anybody know something for this?

該解決方案不應修改我的源代碼,生成的函數除外.枚舉位于 API 中,因此使用目前提出的解決方案不是一種選擇.

The solution should not modify my source, except for the generated functions. The enums are in an API, so using the solutions proposed until now is just not an option.

推薦答案

@hydroo: 沒有額外的文件:

@hydroo: Without the extra file:

#define SOME_ENUM(DO) 
    DO(Foo) 
    DO(Bar) 
    DO(Baz)

#define MAKE_ENUM(VAR) VAR,
enum MetaSyntacticVariable{
    SOME_ENUM(MAKE_ENUM)
};

#define MAKE_STRINGS(VAR) #VAR,
const char* const MetaSyntacticVariableNames[] = {
    SOME_ENUM(MAKE_STRINGS)
};

這篇關于有沒有一種簡單的方法可以將 C++ 枚舉轉換為字符串?的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

相關文檔推薦

boost_1_60_0 .zip installation in windows(Windows 中的 boost_1_60_0 .zip 安裝)
How do I get console output in C++ with a Windows program?(如何使用 Windows 程序在 C++ 中獲得控制臺輸出?)
How do I calculate the week number given a date?(如何計算給定日期的周數?)
OpenCV with Network Cameras(帶有網絡攝像機的 OpenCV)
Export all symbols when creating a DLL(創建 DLL 時導出所有符號)
Getting started with OpenCV 2.4 and MinGW on Windows 7(Windows 7 上的 OpenCV 2.4 和 MinGW 入門)
主站蜘蛛池模板: 国产女人高潮视频 | 欧美亚洲国产日韩 | 国产自偷自拍 | 九九在线免费视频 | 五月婷婷视频 | 男人添女荫道口图片 | 日韩精品视频在线 | 黄色大毛片| 狠狠干在线视频 | 欧美日韩国产在线观看 | 国产一区视频在线播放 | 视频一区二区三区在线观看 | 久久精品一区二区 | 成人深夜视频 | 久久久久久久成人 | 国产com| 黄色网页在线 | 亚洲欧洲综合 | 中文久久乱码一区二区 | 亚洲激情在线 | 亚洲福利网站 | 亚洲免费久久 | 国产福利一区二区 | 午夜快播| 日本精品视频在线 | 国产精品视频免费在线观看 | 亚洲一区在线视频 | 中文字幕不卡视频 | 天堂一区二区三区 | 国产二区三区 | 青青草精品视频 | 亚洲一区二区三区视频 | 久久久久久亚洲 | 在线观看免费av网站 | 天堂成人av | 久久精品一区二区国产 | 国产wwwwww | 中国农村毛片免费播放 | 中文字幕日韩高清 | 一区二区影视 | 欧美一级特黄aa大片 |