Давно мучает вопрос, не могу найти элегантного решения.
Есть несколько классов с общим предком. В хранилище есть объект одного из этих классов (неизвестно, какого именно). Необходимо загрузить данные из файла.
Создать объект и вызвать у него .load() нельзя, т.к. неизвестен его тип. Получается, что нужно сначала прочитать тип, а потом создать объект и тогда уже загрузить его данные. Тогда получается, нужно создать объекта-хозяина, который этим будет заниматься (хранить указатель, читать тип, создавать объект, вызывать его загрузку, уничтожать и т.д.). Тогда получается, что и сохранять такой объект нужно методом того же хозяина, который будет сохранять тип, потом сохранять объект.
Вопрос в чем: все ли здесь верно с точки зрения построения архитектуры? Как решаются такие вопросы в системах сериализации?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>