在实际开发中, 经常设计错误码和错误信息, 这么来搞吧:
#include <iostream>
#include <string>
using namespace std;
enum
{
ERR_XXX1 = -10001,
ERR_XXX2 = -10002,
};
typedef struct _ErrMsg
{
int errCode;
char szStrMsg[256];
}ErrMsg;
ErrMsg g_ErrMsg[] =
{
{ERR_XXX1, "error 1"},
{ERR_XXX2, "error 2"},
};
string getErrMsg(int errCode)
{
int nSize = sizeof(g_ErrMsg) / sizeof(g_ErrMsg[0]);
int i = 0;
for(i = 0; i < nSize; i++)
{
if(errCode == g_ErrMsg[i].errCode)
{
return g_ErrMsg[i].szStrMsg;
}
}
return "no match err msg";
}
int main()
{
cout << getErrMsg(-10001) << endl;
cout << getErrMsg(-1) << endl;
return 0;
}
很常见, 不多说。