#include <iostream>
#include <map>
namespace Errs {
enum Errs {
ERR_TEST1 = 0,
ERR_TEST2,
ERR_TEST3
};
}
class PrtsErrs {
private:
const std::map<Errs::Errs, std::string> errStr {
{ Errs::Errs::ERR_TEST1, "ERR_TEST1" },
{ Errs::Errs::ERR_TEST2, "ERR_TEST2" },
{ Errs::Errs::ERR_TEST3, "ERR_TEST3" }
};
public:
std::string GetErrStr(Errs::Errs errCode) const
{
return errStr.at(errCode);
}
} ;
int main()
{
PrtsErrs foo ;
std::cout << foo.GetErrStr(Errs::Errs::ERR_TEST2) << std::endl ;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8bWFwPgoKbmFtZXNwYWNlIEVycnMgewogICAgZW51bSBFcnJzIHsKICAgICAgICBFUlJfVEVTVDEgPSAwLAogICAgICAgIEVSUl9URVNUMiwKICAgICAgICBFUlJfVEVTVDMKICAgIH07Cn0KCgpjbGFzcyBQcnRzRXJycyB7CnByaXZhdGU6CiAgICBjb25zdCBzdGQ6Om1hcDxFcnJzOjpFcnJzLCBzdGQ6OnN0cmluZz4gZXJyU3RyIHsKICAgICAgICB7IEVycnM6OkVycnM6OkVSUl9URVNUMSwgIkVSUl9URVNUMSIgfSwKICAgICAgICB7IEVycnM6OkVycnM6OkVSUl9URVNUMiwgIkVSUl9URVNUMiIgfSwKICAgICAgICB7IEVycnM6OkVycnM6OkVSUl9URVNUMywgIkVSUl9URVNUMyIgfQogICAgfTsKcHVibGljOgogICAgc3RkOjpzdHJpbmcgR2V0RXJyU3RyKEVycnM6OkVycnMgZXJyQ29kZSkgY29uc3QgCiAgICB7IAogICAgICAgIHJldHVybiBlcnJTdHIuYXQoZXJyQ29kZSk7CiAgICB9Cn0gOwoKaW50IG1haW4oKSAKewogICAgUHJ0c0VycnMgZm9vIDsgCiAgICBzdGQ6OmNvdXQgPDwgZm9vLkdldEVyclN0cihFcnJzOjpFcnJzOjpFUlJfVEVTVDIpIDw8IHN0ZDo6ZW5kbCA7CiAgICByZXR1cm4gMDsKfQ==