C++实现DataInputStream/DataOutputStream
所以,我们在序列化时,要将数据做大端转换,而反序列化时要将读取的数据转换回小端模式。但是在C++中,并没有如此方便的接口(至少标准库中没有,Boost库中倒是有Serialization接口支持序列化(即将数据结构保存为字节流)与反序列化(从字节流中读取数据以重建数据结构),但是引入Boost库的开销是比较庞大的)。由于字节流的读取是单向的,之前读取的数据在当前流中将无法再次读取,所以用streamIter来记录当前光标在流中的位置(用erase删掉已经读过的数据也是可以的,但是效率不如指针,开销也大)。
原创
2022-09-13 17:08:15 ·
741 阅读 ·
0 评论