C ++ - boost :: any serialization

Насколько я понимаю, нет поддержки сериализации ( 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 ...
};

Очевидно, это создает некоторые проблемы даже при мысли о сериализации этого материала. Может быть, кто-нибудь знает какой-нибудь трюк для такой сериализации (и, конечно же, правильной десериализации)?

Спасибо

12
задан Yippie-Ki-Yay 8 September 2010 в 22:16
поделиться