Подскажите, поэалуйста, реализацию для subj
enum ReturnType
{
RET_OK = 0, // все хорошо
ERR_IO, // ошибка io с файлом
ERR_SESSIONCLOSED, // сессия закрыта
ERR_DICONNECTED, // отсутствие соединения с удаленным модулем
ERR_CRC, // ошибка КС принатого пакета
....
}
получить что-то подобное
что-там нужное
{
{ RET_OK, "все хорошо" },
{ ERR_IO, "ошибка io с файлом" },
{ ERR_SESSIONCLOSED, "сессия закрыта" },
{ ERR_DICONNECTED, "отсутствие соединения с удаленным модулем" },
{ ERR_CRC, "ошибка КС принатого пакета" }
....
}
мне кажется прямо в лоб и реализовать
enum ReturnType
{
RET_OK = 0, // все хорошо
ERR_IO, // ошибка io с файлом
ERR_SESSIONCLOSED, // сессия закрыта
ERR_DICONNECTED, // отсутствие соединения с удаленным модулем
ERR_CRC // ошибка КС принатого пакета
};
char const* EnumToString(ReturnType rt)
{
static char* ReturnTypeString[] = {
"все хорошо",
"ошибка io с файлом",
"сессия закрыта",
"отсутствие соединения с удаленным модулем",
"ошибка КС принатого пакета"
};
STATIC_ASSERT(ERR_CRC == sizeof(ReturnTypeString) / sizeof(&ReturnTypeString[0]) - 1);
return ReturnTypeString[rt];
}
char const* EnumToString2(ReturnType rt)
{
switch(rt)
{
case RET_OK: return "все хорошо";
case ERR_IO: return "ошибка io с файлом";
case ERR_SESSIONCLOSED: return "сессия закрыта";
case ERR_DICONNECTED: return "отсутствие соединения с удаленным модулем";
case ERR_CRC: return "ошибка КС принатого пакета";
default: assert(!"Unexpected return type");
};
return 0;
}
Здравствуйте, Alexander Pazdnikov, Вы писали:
AP>Подскажите, поэалуйста, реализацию для subj
AP>AP>enum ReturnType
AP>{
AP> RET_OK = 0, // все хорошо
AP> ERR_IO, // ошибка io с файлом
AP> ERR_SESSIONCLOSED, // сессия закрыта
AP> ERR_DICONNECTED, // отсутствие соединения с удаленным модулем
AP> ERR_CRC, // ошибка КС принатого пакета
AP>....
AP>}
AP>
AP>получить что-то подобное
AP>AP>что-там нужное
AP>{
AP> { RET_OK, "все хорошо" },
AP> { ERR_IO, "ошибка io с файлом" },
AP> { ERR_SESSIONCLOSED, "сессия закрыта" },
AP> { ERR_DICONNECTED, "отсутствие соединения с удаленным модулем" },
AP> { ERR_CRC, "ошибка КС принатого пакета" }
AP>....
AP>}
AP>
Boost.EnumАвтор: _nn_
Дата: 07.09.07
Можете мой велосипед использовать:
здесьАвтор: nen777w
Дата: 23.10.08