分配字段编号

在NewService所有字段都是标量类型:两个string类型msn 和 streamKey。当然,你也可以为字段指定其他的合成类型,包括枚举(enumerations)或其他消息类型。 正如消息中的结构每个消息定义中的每个字段都有唯一的编号。这些字段编号用于标识消息二进制格式中的字段,并且在使用消息类型后不应更改。这里需要注意下,范围 1 到 15 中的字段编号需要一个字节进行编码,包括字段编号和字段类型.范围 16 至 2047 中的字段编号需要两个字节。所以你应该保留数字 1 到 15 作为非常频繁出现的消息元素。请记住为将来可能添加的频繁出现的元素留出一些空间。

最小的标识号可以从1开始,最大到2^29 - 1, or 536,870,911。不可以使用其中的[19000-19999]( (从FieldDescriptor::kFirstReservedNumber 到 FieldDescriptor::kLastReservedNumber))的标识号, Protobuf协议实现中对这些进行了预留。如果非要在.proto文件中使用这些预留标识号,编译时就会报警。同样你也不能使用早期保留的标识号。