класс перечисления и ускоренная сериализация

Как я могу сериализовать/десериализовать class, у которого есть член enum class, используя ускоренную сериализацию. Пример:

enum class enum_class{
    item1=0,item2=1
}

class foo{
private:
    friend class boost::serialization::access;
public:
    foo() = default;
    ~foo() = default;
    template<class Archive> inline void serialize(Archive & ar, const unsigned int version){
        ar & a;
        ar & b;
    }
    enum_class a;
    int b;
};

Я не могу сделать enum_class сериализуемым, так как он не принимает friend или member functions. Каково решение?


person Humam Helfawi    schedule 21.04.2016    source источник


Ответы (1)


Вам нужно сделать ваш класс enum сериализуемым.

См. обучающую, ненавязчивую версию. для инструкций.

person Maxim Egorushkin    schedule 21.04.2016
comment
Я мог найти что-нибудь о классе enum. просто перечисления и классы. ничего для классов enum - person Humam Helfawi; 21.04.2016
comment
@HumamHelfawi Реализуйте ненавязчивую версию для вашего перечисления. - person Maxim Egorushkin; 21.04.2016
comment
@Максим Егорушкин вижу спасибо - person Humam Helfawi; 21.04.2016