Quiero escribir una función de serialización para una clase que opcionalmente puede comprimir los datos. Me gustaría utilizar las instalaciones de compresión proporcionadas en boost :: iostreams. ¿Alguien sabe como hacer esto?Uso de boost :: archive con boost :: iostreams para comprimir datos
struct X
{
X() {}
template<class Archive>
void serialize(Archive & ar, const unsigned int version)
{
ar & compression;
if(compression == 0)
{
ar & data;
}
else if(compression == 1)
{
// use boost::iostream compression
// facilities to serialize data
}
}
int compression;
std::vector<int> data;
};