【发布时间】:2015-05-13 16:23:18
【问题描述】:
我想将类实例的向量保存到一个文件中,以便以后能够加载它们。
这是类的样子(大致):
class outer{
public:
int a;
class inner{
public:
int a;
inner(int a){
this->a = a;
}
};
vector<inner> all_inners;
outer(int a){
this->a = a;
all_inners.push_back(inner(this->a+1));
}
};
outer 类实例的向量,以及如何填充它:
vector<outer> all_outers;
int i;
void some_function(){
for(i=0; i<5;i++)
all_outers.push_back(outer(i));
}
我想将all_outers 向量序列化到一个文件中,当我读回它时,我希望类实例(包括内部类实例)的状态与写入时完全相同到文件。
这样的事情可能吗?
【问题讨论】:
-
如果说serialize,是要保存文本格式,还是二进制数据?前者可以通过覆盖
std::ostream operator<<()和std::istream operator>>()来处理,专门为您的班级服务。 -
我想要二进制格式..
标签: c++ serialization vector