繁体   English   中英

C ++(de)序列化矢量顺序

[英]C++ (de) serializing a vector order of items

这看似微不足道,但我需要确定。

当将一个std :: vector序列化到一个文件,然后将其从磁盘反序列化到内存时,vector中各项的索引是否保证相同(假设我在内存中没有有意识地更改它)?

简单地说,将

std::vector<int> v = {1, 2, 3, 4};

总有那个顺序的物品吗?

我正在使用谷物进行(反序列化) 谷物 (如果有任何重要性的话)。

谢谢!

PS:以上是否有例外?

这取决于您的序列化。 通常,反序列化的序列化顺序必须始终相同,因为其他所有操作都会破坏从中进行反序列化的流。

在您的情况下,您应该深入研究谷物文件或询问他们是否保证订单,但是我希望这种行为是一致的。

可能的陷阱可能是地图(此处您未提及),因为地图的内部结构不是添加数据的顺序(大部分时间)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM