前言
在做运动员管理系统的时候,我用到C++中的对象遇到一个问题,就是保存对象的时候,想要将对象保存保存在文件中,本来是直接这样子:
int count = 0;//对象个数,即学生人数
fstream infile("e:\\student.txt",ios::in | ios::binary);//以读方式打开文件
if (!infile)
{
cout<<"open file error!"<<endl;
getchar();
exit(0);
}
Student stu;
while (infile.read((char*)&stu,sizeof(stu)))//强制类型转换为(char*),
{
count++;
}
infile.close();
return count;
//写入
Student stu1;
stu1.InputInfo();
fstream outfile("e:\\student.txt", ios::app | ios:

本文介绍了在C++中如何使用Boost库进行对象的序列化和反序列化,以解决直接保存对象导致的问题。通过示例说明了在自定义类中引入Boost序列化的方法,包括声明友元类、模板函数等,并提醒在使用过程中需要注意的事项,如STL对象的序列化、文件为空时的反序列化问题。
最低0.47元/天 解锁文章
354

被折叠的 条评论
为什么被折叠?



