ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Вторник
23 июля
1251262 Топик полностью
Dingo (19.10.2022 14:13, просмотров: 150) ответил SciFi на Но сначала не мешало бы разобраться, зачем хотите инкапсуляцию и ограничение видимости. Это вообще прилично хотеть такие вещи? :-)
Простейший пример, что придумал: АЦП и SPI должны знать длину поступающих данных, а наверх идут уже значения (напряжения, попугаев, ... ) . 
#if (defined(_ADC_C_) || defined(_MYSPI_C) )
# ADC_MUX_COUNT 3
#define SEQUENCE_LEN (ADC_MUX_COUNT * 3/* Sample len, special for Kpoк */ )
#endif

Без подобных трюков придётся писать ADC_DMA_SPI_TRANSACTION_LEN или подобное. И да, я понимаю, что это трюк и изврат, и такое не следует пихать повсеместно.

PS:ѢѢ! Поймал себя на том, что если дефайны для контроля типов поменять на static const unsigned int (или typedef), то как раз и получатся те самые "static в .h файлах." O-o Неужели VLLV ходил по этому пути?