MsgPack获取消息类型

时间:2019-03-15 12:17:12

标签: c++ msgpack

我有几个通过UDP传输的MsgPack消息。在UDP通道的另一端,我需要将UDP有效负载转换回MsgPack消息的类型。

我使用以下代码反序列化:

class MyCustomType{
public: 
       MSGPACK_DEFINE(a);
       ... // Constructor, getter/setter
private: 
       int a;
};

...

msgpack::unpack(handle, data, bytesTransferred);
auto msgPackObject = handle.get();
MyCustomType object;
msgPackObject.convert(object);

现在对象包含了我所有的数据。但是我有不同的MyCustomType对象。有没有办法在转换之前获取类型?那么我可以使用switch语句吗?

或者,我必须使用一些try-catchs,我想避免使用。

谢谢

0 个答案:

没有答案