Насколько я понимаю, нет поддержки сериализации ( boost :: serialization
, фактически) для boost :: any
заполнителя.
Кто-нибудь знает есть ли способ сериализовать пользовательский boost :: any
объект?
Проблема очевидна: boost :: any
использует заполнители на основе шаблонов для хранения объектов и typeid
, чтобы проверить, подходит ли boost :: any_cast
.
Итак, существует настраиваемый абстрактный суперкласс заполнитель
и настраиваемые производные классы на основе шаблонов, которые создаются следующим образом:
template <T> custom_placeholder : public placeholder {
virtual std::type_info type() const { return typeid(T); }
virtual ...
};
Очевидно, это создает некоторые проблемы даже при мысли о сериализации этого материала. Может быть, кто-нибудь знает какой-нибудь трюк для такой сериализации (и, конечно же, правильной десериализации)?
Спасибо