(一)简介
将数据对象序列化(serialization),或说串行化,持久化(persistence)都是差不多的意思,就是将程序里复杂的对象数据和关系采用一个统一的算法,将其变成一行、一串、一序列的数据,从而达到持久保存的目的,即电脑关机还在,下次打开电脑只要打开文件,程序又在内存中重建原来的关系。
这是一个很普通的功能,比如WORD、EXCEL自不必说,其实只要稍稍像样的程序都有这个功能。学习MFC的时候也会专门学习如何保存数据。
但是boost Serialization把这一功能做得更加完美,使用更简单,功能更强大,研究这个库将会是很有趣的事情。
要实现序列化关键要做到两点
1)重建对象;2)指针的保存与重建。
要做到这两点,必须要薄记,所有的技术都是围绕这个进行。这是怎样把它做得更漂亮。
参考资料:1)boost Serialization库,2)《C++设计新思维》,这本书花了不少篇幅讨论这个问题,而且boost Serialization作者也把该书作为参考书;3)《程序员》2002、05期《C++怎样实现持久化persistence?》
研究方法:1)学会使用;2)阅读资料,3)看源码,4)分析保存后的文件格式(用txt文件保存),5)研究讨论,希望有兴趣的朋友一起来讨论,希望高手、行家给与我帮助。