我目前正在尝试在C语言中使用Google Protocol Buffers。 我有点不确定如何使用GPB创建C联合体。
例如,如果有以下proto文件:
message msgToSend
{
required Type msg_type=1; //Type is a predefined enum to determine message type
optional ReqMsg1 msg1=2;
optional ReqMsg2 msg2=3;
}
我期望上述代码在编译时生成一个union
,但实际上生成了如下结构体:
struct _msgToSend
{
ProtobufCMessage base;
Type msg_type;
ReqMsg1 msg1;
ReqMsg2 msg2;
}
oneof
(https://dev59.com/7FsV5IYBdhLWcg3wrQgp#40040658)。我无法删除已接受的答案。 - unwind