Protocol buffers 如何在协议缓冲区中设置嵌套消息的默认值?
如果我的proto文件包含这样的代码Protocol buffers 如何在协议缓冲区中设置嵌套消息的默认值?,protocol-buffers,Protocol Buffers,如果我的proto文件包含这样的代码 message Inner { optional int32 someValue = 1; } message Outer { optional Inner innerMember = 2; } 是否可以设置该innerMember的默认值,类似这样 可选内部成员=2[default=defaultValueForInner] 如果是,我应该在defaultvalueforinternal的位置放置什么来初始化它?据我所知,您只能在内部消息
message Inner {
optional int32 someValue = 1;
}
message Outer {
optional Inner innerMember = 2;
}
是否可以设置该innerMember的默认值,类似这样
可选内部成员=2[default=defaultValueForInner]代码>
如果是,我应该在defaultvalueforinternal
的位置放置什么来初始化它?据我所知,您只能在内部消息本身内部设置默认值:
message Inner {
optional int32 someValue = 1 [default = 123];
}
message Outer {
optional Inner innerMember = 2;
}
这意味着如果您在多个位置使用内部
,则所有位置的默认值都相同。据我所知,您只能在内部消息本身内设置默认值:
message Inner {
optional int32 someValue = 1 [default = 123];
}
message Outer {
optional Inner innerMember = 2;
}
这意味着如果从多个位置使用内部
,则所有位置的默认值都相同。这是正确的。无法在Protobuf中为消息字段设置默认值。(不过,Cap'n Proto对此表示支持。)(披露:我是proto2和Cap'n Proto的作者。)这是正确的。无法在Protobuf中为消息字段设置默认值。(尽管《宪章》支持它。)(披露:我是《宪章2》和《宪章》的作者。)