cereal

    0热度

    1回答

    我在使用cereal时遇到了PIMPL惯用语的麻烦。 这是一个小例子: b.h #ifndef _B_H_ #define _B_H_ #include <memory> #include "cereal/types/memory.hpp" #include "cereal/archives/json.hpp" struct BImpl; class B { public:

    1热度

    1回答

    我试图通过TCP链接传送谷物的序列化结果(二进制档案)。对于接收方来说,首先要确定需要多少字节(至少)来恢复消息对象,但似乎没有办法获得这些信息。 具有原始类型的所有成员的结构的序列化结果似乎与结构的sizeof的结果一样大。这有什么保证吗?我很担心,因为如果使用便携式二进制归档文件进行序列化,结果会增大1个字节。我知道这是记录排列顺序,但接收方怎么知道这个?我想出的唯一安全方法是序列化消息并从输

    0热度

    1回答

    我想保存/加载XML文件使用谷物,但无法弄清楚如何保存/加载XML属性。例如: 我有一个XML文件: <windows height="101", width = "200"/> 和结构 struct window { int height; int width; } 我如何定义序列化功能来加载/使用谷物保存XML属性值?

    2热度

    1回答

    如何序列化std :: chrono :: minutes与谷物或一般? 我想这 struct A { std::chrono::minutes m; template <class Archive> void serialize(Archive& ar) { ar(m); } }; int main() { A a;

    0热度

    1回答

    共享序列化功能让想我有类似: enum t_color { BLUE=0,RED,GREEN}; vector<string> TAG_color={"BLUE", "RED", "GREEN"}; enum t_colores { AZUL=0,ROJO,VERDE}; vector<string> TAG_colores={"AZUL", "ROJO", "VERDE"}; 我想用

    0热度

    1回答

    例如 enum Color {RED, BLUE, YELLOW}; 而且我想用谷物序列化类型 Color c = RED; JSONOutputArchive archive(std::cout); archive(c); 输出看起来像 "value0" : "RED" 或 "value0" : RED

    0热度

    1回答

    我用下面的代码试图序列/反序列化对象的二进制数据: MyDTO dto1; std::ostringstream os(std::stringstream::binary); { cereal::BinaryOutputArchive oarchive(os); // Create an output archive oarchive(dto1); } MyDTO

    0热度

    1回答

    我应该如何继续序列化一个嵌套对象? 例子: class B { public: int y; template<class Archive> void serialize(Archive& ar) { ar(CEREAL_NVP(y)); } } class A { public: int x; st

    1热度

    1回答

    我试图从JSON文件加载参数到我自己的参数类中使用VS2013谷物(v1.12)。 编译并加载到POD中可以正常工作,但加载到我自己的类中会抛出cereal::RapidJSONException。 这里是我的代码: #include <iostream> #include "cereal/archives/json.hpp" struct CMyStruct { CMyStruc

    2热度

    1回答

    我试图使用Cereal来序列化没有默认构造函数的对象。直接存储这些对象或通过智能指针工作。然而, 当我把物体放入容器,它不再编译: error: no matching function for call to ‘Node::Node()’ 有没有办法让谷物存储/恢复对象的载体没有默认构造函数? 我的测试代码: #include <fstream> #include <cereal/archiv