Re[2]: Определение регулярных последовательностей статических д
От: Евгений Музыченко Франция https://software.muzychenko.net/ru
Дата: 14.12.24 19:31
Оценка:
Здравствуйте, rg45, Вы писали:

R>Здравствуйте, Евгений Музыченко, Вы писали:


R>Там массив void* что ли?


Если всё совершенно разнородное, то или void*, или указатели на самый общий union, из которого парсер потом добывает нужный тип по общему полю селектора.

Ты бы хоть эскиз кода набросал какой-то.

R>Лень набрасывать код только ради примера. Одно из типичных применений — параметризуемые программы, настраиваемые на конкретного заказчика. Поначалу хватает набора простейших #define или констант, потом софт постепенно усложняется, добавляются новые параметры и их группы, которые уже замучишься перечислять в виде имен вида Node7_Channel3_TempMax, и вдобавок легко перепутать номера/индексы. А главное — в этой куче с ходу не видно структуры, ибо она делается в некотором роде подобно реляционным БД, где иерархия и группировка достигаются гибкими, но неочевидными способами.


Поэтому хочется это дело оформить в структурированно-иерархическом виде, как в cfg-файлах, виндовом реестре или том же JSON, чтоб максимум данных можно было задавать литералами. Чтоб в любой однородный перечень, указанный в отдельно взятом наборе параметров, можно было тупо вставить дополнительный элемент, и это не ломало соответствия с предопределенным типом и/или форматами остальных наборов параметров.

Я знаю, что можно наплодить классов, наделать из них полиморфных объектов, но инициализировать и собирать в контейнеры это все можно только во время выполнения. Поскольку я примерно представляю, в какой жирный и уродливый код это будет раскрываться, мне заранее противно даже думать в эту сторону.

На любом приличном ассемблере я б наделал макросов, и изящно описал бы структуру данных любой сложности.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.