string的保存问题
比如int *p,i=1;
p=&i;
当用ofstream 保存p后,以后再想通过这个指针读上次的变量i就没有意义了,因为当时i的地址是动态分配的,是临时的。
同样string也有一样的问题,直接保存string其实保存的是地址,那么除了把string转化为字符数组还有什么好方法来保存它
么,求教。。
[解决办法]
好像真没有什么好的方法了。去查看下boost::serialize吧。用这个把类序列化
[解决办法]
据说boost有序列化库,没用过。
如果不想引入额外库的话,只能在类里写一个接口,序列化和反序列化都使用这个接口来处理指针数据或者string数据。我估计boost的序列化也应该是这个原理