Отображение кодов ошибок в строку в C ++

Что может быть более эффективным способом отображения кодов ошибок из перечисления в строку? (в C ++)

Например, теперь яЯ делаю что-то вроде этого:

std::string ErrorCodeToString(enum errorCode)
{
   switch (errorCode)
   {
      case ERROR_ONE:   return "ERROR_ONE";
      case ERROR_TWO:   return "ERROR_TWO";
      ...
      default:
         break;
   }

   return "UNKNOWN";
}

Было бы эффективнее, если бы я сделал что-то подобное?

#define ToStr( name ) # name;

std::string MapError(enum errorCode)
{
   switch (errorCode)
   {
      case ERROR_ONE:   return ToStr(ERROR_ONE);
      case ERROR_TWO:   return ToStr(ERROR_TWO);
      ...
      default:
         break;
   }

   return "UNKNOWN";
}

Может быть, у кого-нибудь есть какие-либо предложения или мысли по этому поводу? Благодарю.

Ответы на вопрос(6)

Ваш ответ на вопрос