Zuordnen von Fehlercodes zu Zeichenfolgen in C ++

Was wäre eine effizientere Möglichkeit, Fehlercodes von der Aufzählung zu einer Zeichenfolge zuzuordnen? (in C ++)

Zum Beispiel mache ich jetzt so etwas:

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

   return "UNKNOWN";
}

Wäre es in irgendeiner Weise effizienter, wenn ich so etwas tun würde ?:

#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";
}

Vielleicht hat jemand irgendwelche Vorschläge oder Gedanken dazu? Vielen Dank.

Antworten auf die Frage(6)

Ihre Antwort auf die Frage