How can I output the value of an enum class in C++11

前端 未结 7 2262
面向向阳花
面向向阳花 2020-11-30 19:00

How can I output the value of an enum class in C++11? In C++03 it\'s like this:

#include 

using namespace std;

enum A {
  a =          


        
7条回答
  •  醉梦人生
    2020-11-30 19:43

    #include 
    #include 
    
    using namespace std;
    
    enum class A {
      a = 1,
      b = 69,
      c= 666
    };
    
    std::ostream& operator << (std::ostream& os, const A& obj)
    {
       os << static_cast::type>(obj);
       return os;
    }
    
    int main () {
      A a = A::c;
      cout << a << endl;
    }
    

提交回复
热议问题