Bonjour, je désire sérialiser (en binaire) un objet de type __gnu_cxx::hash_map mais je ne vois pas bien la procédure à suivre,
En fait il s'agit d'une hashmap avec des entiers non signés en clé et valeur . Cette hash_map code une table de correspondance entre des identifiants. Le nombre d'élément est de l'ordre du millions (de 1 à 15 millions grosso modo).
Sur ma hash_map:
__gnu_cxx::hash_map<unsigned int,unsigned int> corresp
Je serais tenté de faire un simple:
1 2 3
| inline void ecrireBinaire(ostream& out, const value_type& v) {
out.write((char*)&v, sizeof(v));
} |
que j'appelerais sur la hash_map comme il suit:
ecrireBinaire( out, corresp);
out étant un ostream.
Je n'ai pas l'habitude de sérialiser en c++ d'où ma question: quelle est la meilleur solution? Je se souhaite le faire sans Boost car j'ai quelques soucis pour installer correctement Boost
.
Cordialement,
Partager