Boost.Serialization でコンテナを標準出力

Boost.Serialization でコンテナの中身を出力出来ないかなーってことで試してみました。

[ソース]

#include <boost/serialization/serialization.hpp>
#include <boost/serialization/vector.hpp>
#include <boost/serialization/map.hpp>
#include <boost/serialization/string.hpp>
#include <boost/archive/text_oarchive.hpp>
#include <iostream>
#include <vector>
#include <string>
#include <map>


int
main(){
    std::vector<int> v;
    v.push_back(0);
    v.push_back(1);
    v.push_back(2);
    v.push_back(3);

    boost::archive::text_oarchive ot(std::cout);
    ot << v;

    std::map<std::string, int> data;
    data["homu"] = 13;
    data["mami"] = 15;
    data["mado"] = 14;
    data["saya"] = 13;
    data["an"]   = 11;

    ot << data;

    return 0;
}

[出力]

22 serialization::archive 9 4 0 0 1 2 3 0 0 5 0 0 0 2 an 11 4 homu 13 4 mado 14 4 mami 15 4 saya 13


まぁこんな感じですね。

[boost]

  • ver 1.52.0