我有一些我想用字符串表示的错误代码:
enum class ErrorCode
{
OK,
InvalidInput,
BadAlloc,
Other
};
我想创建一种直观且简单的方法来获取表示这些错误的字符串。简单的解决方案是:
std::string const ErrorCode2Str(ErrorCode errorCode)
{
switch (errorCode)
{
case OK:
return "OK";
case InvalidInput:
return "Invalid Input";
case BadAlloc:
return "Allocation Error";
case Other:
return "Other Error";
default:
throw Something;
}
}
有没有更好的办法?我可以ErrorCode
以某种方式重载字符串转换吗?我可以创建一个ErrorCode::str()
函数吗?这个问题有标准解决方案吗?