Re[38]: The Big OOPs: Anatomy of a Thirty-five-year Mistake
От: Marty Пират https://www.youtube.com/channel/UChp5PpQ6T4-93HbNF-8vSYg
Дата: 27.09.25 11:07
Оценка:
Здравствуйте, rg45, Вы писали:

M>>Ну, а) макросы, б) ты описываешь свои данные, а не чужие, заданные кем-то другим даже не в виде перечислений, а тупо макросами


R>Я специально привёл одну из наиболее древних реализаций, которая закладывалась ещё на базе C++03, когда не было даже макросов с переменным числом параметров. Тем не менее, эта реализация позволяла реализовывать унифицированные процедуры, которые работали сразу для всех типов. Например, я был избавлен от необходимости писать процедуры сериализации для каждой структуры в отдельности (коих овер-дохрена).


Ну, я в своё время наткнулся на статью местную — C++: метаданные своими руками. Чтение/запись простых Xml-файлов из программы на классическом С++
Автор(ы): Андрей Мартынов
Дата: 30.11.2003
В статье рассмотрен декларативный подход к решению задачи чтения/записи XML-файлов из программ на классическом C++. Метод основан на построении специальной структуры статических данных — метаданных типов.


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