Re[3]: Автоматический обход иерархии
От: Videoman Россия https://hts.tv/
Дата: 14.09.22 16:06
Оценка:
Здравствуйте, Kazmerchuk Pavel, Вы писали:

KP>Про NVI знаю, но это не мой случай. Например, мне нужно сериализовать сложный объект. Каждый производный класс добавляет свои сериализуемые данные. Как такое обычно решается?


Ну это уже совершенно другая задача же. Абстрактно, сериализация это набор вложенных друг в друга структур (классов и т.д.), в общем виде даже не унаследованных от общего предка. Вариантов масса. У меня, например, просто заводится два свободных шаблонных метода, условно, Pack, Unpack для каждого поддерживаемого типа. За сериализацию отвечает родитель, тот, кто владеет вложенной структурой. Также есть объект, условно, Archive, который определяет сам формат сериализации (Json, XML, Bibary и т.д.). О передается рекурсивно по всей иерархии и ему передаются нужные данные. Не очень понятно зачем тут нужны виртуальные функции
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.