abivan (03.04.2015 15:01, просмотров: 68) ответил Звероящер на Спор от том, что лучше: #define или enum. По мне - это те же яйца, только сбоку. Кто что скажет?
с enum-ом можно сделать вот такое. Это проверка превышения количества созданных"объектов" Тут и enum и define :-)
#define OS_BSEMS 13 // количество используемых семафоров.
/* это проверка что количество созданных семафоров не привысило лимит определенный в файле конфигурации ОС */
#define OS_CHECK_MARGIN(X, Y) \
extern char rg##X[X - Y]
enum OSA_BINSEMS_ENUM {
enBS_IMSGCOME_P,
//enBS_IUART_RQ_COMPLETE_P,
enBS_PROG_ADDR_P,
enBS_EMSG_ENABLE_P,
enBS_EMSGCOME_P,
enBS_FWPMSGCOME_P,
enBS_FWPMSGCOMPLETE_P,
enBS_FLASH_FREE_P,
enBS_DPLS_ON_P,
enBS_DISPLAY_LOCK_P,
enBS_EXT_FLASH_ERR_P,
enBS_KBD_LOCK_P,
enBS_END
};
OS_CHECK_MARGIN(OS_BSEMS, enBS_END);