vector<packet*> vv;
int main() {
packet* p1 = new packet;
p1->x = 10; p1->name = "p1";
packet* p2 = new packet;
p2->x = 20; p2->name = "p2";
vv.push_back(p1);
vv.push_back(p2);
ofstream ofss;
ofss.open("pppppppppp.txt", ios::binary);
serialize(cout, vv);
ofss.close();
vv.clear();
ifstream ifss;
ifss.open("pppppppppp.txt", ios::binary);
de_serialize(ifss, vv);
ifss.close();
printf("vv.size=%d\n", vv.size());
for_each(vv.begin(), vv.end(), [](packet* pp) {
printf("x: %d, name:%s\n", pp->x, pp->name.c_str());
});
printf("================\n");
packet p;
p.x = 3; p.name = "name1";
m .push_back(p);
p.x = 4; p.name = "name2";
m .push_back(p);
ofstream ofs;
ofs.open("zzzzzzzzzzzzzzzzzzzzzzz.txt", ios::binary);
serialize(ofs, m);
ofs.close();
// ZeroMemory(&p, sizeof(p));
m.clear();
ifstream ifs;
ifs.open("zzzzzzzzzzzzzzzzzzzzzzz.txt", ios::binary);
de_serialize(ifs, m);
ifs.close();
printf("m.size = %d\n", m.size());
for_each(m.begin(), m.end(), [](pair<int, vector<packet》 p) {
printf("m[%d].size=%d\n", p.first, p.second.size());
for_each(p.second.begin(), p.second.end(), [](packet p) {
printf("x = %d, name=%s\n", p.x, p.name.c_str());
});
});
}