我试图在c ++中对包含抽象对象容器的对象进行文本序列化和反序列化,有人知道上面的代码示例吗?
答案 0 :(得分:3)
答案 1 :(得分:2)
与其他语言不同,C ++并没有“烘焙”这种序列化。你想要使用一个库。例如Boost.Serialization,Google Protocol Buffers(可以是文件格式)或Apache Thrift。
答案 2 :(得分:1)
您可以为您的抽象类创建一个名为:
的方法virtual void serialize(char *out, int outLen) = 0;
..反过来又是一个静态反序列化器:
AbstractClass deserialize(char *serializedString, int strLen);
在你的反序列化器中,你可以有不同的策略来反序列化抽象类的正确子类。
答案 3 :(得分:1)