我如何在协议缓冲区中表示二维数组?

问题描述 投票:16回答:2

如何在协议缓冲区中表示二维数组?

我需要将intdouble 2d数组存储为PB消息中的字段,例如:

int[][] multi = new int[5][10];

我正在使用C ++,Java和C#。

提前感谢。

java protocol-buffers multidimensional-array
2个回答
11
投票

协议中对此没有直接支持。最好的选择是拥有一组重复的对象,每个对象have一个数组-即

message Foo {
    repeated int items = 1;
}
...
repeated Foo foos = 1;

0
投票

它不起作用。

我查找了grpc指南,该指南仅支持键值结构。我建议你:


message ListResp { 
   repeated Array list = 1;

}

message Array{
     int64 id = 1; // 
    string name = 2; // 
}
© www.soinside.com 2019 - 2024. All rights reserved.