serialisation d'iterateur de liste avec Boost::serialization
Tout est dans le titre, j'ai une classe A avec comme membre, un vecteur de int et un itérateur:
Code:
1 2 3 4 5 6 7
|
class A
{
public:
vector<int> m_lstValues;
vector<int>::iterator m_whereIam;
}; |
je cherche à la serialiser avec:
Code:
1 2 3 4 5 6 7
|
template<class Archive>
void serialize(Archive & ar, A & a, const unsigned int version)
{
ar & a.m_lstValues;
ar & a.m_whereIam;
} |
mais lorsque j'essaie de faire:
Code:
1 2 3 4 5 6 7 8 9 10 11
| int main()
{
A a;
a.m_lstValues.push_back(10);
a.m_whereIam = a.m_lstValues.begin();
ofstream fs("test.txt");
boost::archive::text_oarchive oa(fs);
oa & a;
return 0;
} |
le compilateur me sort:
Citation:
C:\Program Files\boost\boost_1_35_0\boost\serialization\access.hpp(109) : error C2039: 'serialize' : n'est pas membre de 'std::vector<_Ty>::iterator'
avez vous déjà sérialisé un itérateur, si oui comment avez vous fait?