我有一个消息类:
message Foo {
repeated Foo2 field = 1;
}
//Foo2 is another message
并在我的cpp文件中:
Foo* ci1;
Foo* ci2;
//call some function to to assign values to ci1->field(0)
function( ci1 )
//try to copy ci1-field(0) to ci2->field(0)
ci2->set_field( 0, ci1->field(0) );
但是我收到一条错误消息: 错误:'Foo'没有名为'set_field'的成员 为什么将set_field作为成员而不是函数set_成员字段? 我是协议缓冲区的新手,所以任何帮助都将受到赞赏!
谢谢!
答案 0 :(得分:0)
尝试*ci2->add_field() = ci1->field(0)
。
更一般地说,您需要了解protobuf如何映射到类,以及如何处理每种类型的字段。详细信息位于the documentation。