Vladimir Ljaschko (11.12.2010 12:35, просмотров: 141) ответил Хитрый Китаец на В windows,например,ошибки глобально разделены на две группы: системные и пользовательские,системные в свою очередь тоже разбиты на подгруппы, каждая группа имеет уникальный ID.Кроме того,если Вы хотите получить ошибки со всех уровней - их коды
Ну, у меня, к счастью, не Windows а все проще. Цепочка ошибок одна и прямая. Я не хочу в протоколе предусматривать чтение ошибок отдельных уровней, хочу иметь одну переменную, соответственно свести все коды ошибок в одну переменную.
Все упрощая до банальности, выбор между двумя вариантами:
1: enum {NO_ERROR=0, ERR1_LEVEL1,... ERRx_LEVEL1, ..ERR1_LEVELy, ERRz_LEVELy}; // хэдер globals
2: enum {NO_ERROR=0, ERR1_LEVEL1,... ERRx_LEVEL1, LEVEL1_QTY}// хэдер первого уровня
enum {ERR1_LEVELy=LEVEL1_QTY, ERRz_LEVELy} // хедер уровня "y"
Я понимаю, что отчасти пложу сущности, но глядя на ужас переделываемого проекта, написанного на "ассемблерном С", хочется сделать красиво.