内容简介:Protocol Buffers 学习(2):字段类型和其他语言字段类型之间的映射
对照表格
| .proto Type | 介绍 | C++ Type | Java Type | Python Type | Go Type | Ruby Type | C# Type | PHP Type |
|---|---|---|---|---|---|---|---|---|
| double | double | double | float | float64 | Float | double | float | |
| float | float | float | float | float32 | Float | float | float | |
| int32 |
使用可变长度编码,不能编码负值,如果字段可能有负值,推荐使用 sint32
|
int32 | int | int | int32 | Fixnum 或者 Bignum (按需) | int | integer |
| int64 |
使用可变长度编码,不能编码负值,如果字段可能有负值,推荐使用 sint64
|
int64 | long | int/long | int64 | Bignum | long | integer/string |
| uint32 | 使用可变长度编码 | uint32 | int | int/long | uint32 | Fixnum 或者 Bignum (按需) | uint | integer |
| uint64 | 使用可变长度编码 | uint64 | long | int/long | uint64 | Bignum | ulong | integer/string |
| sint32 | 使用可变长度编码,有符号int型,比int32对负数支持更好 | int32 | int | int | int32 | Fixnum 或者 Bignum (按需) | int | integer |
| sint64 | 使用可变长度编码,有符号int型,比int64对负数支持更好 | int64 | long | int/long | int64 | Bignum | long | integer/string |
| fixed32 |
始终为四个字节,值大于 2^28
时,比uint32更有效 |
uint32 | int | int | uint32 | Fixnum 或者 Bignum (按需) | uint | integer |
| fixed64 |
始终为四个字节,值大于 2^56
时,比uint64更有效 |
uint64 | long | int/long | uint64 | Bignum | ulong | integer/string |
| sfixed32 | 始终为四个字节 | int32 | int | int | int32 | Fixnum 或者 Bignum (按需) | int | integer |
| sfixed64 | 始终为四个字节 | int64 | long | int/long | int64 | Bignum | long | integer/string |
| bool | bool | boolean | bool | bool | TrueClass/FalseClass | bool | boolean | |
| string | 字符串必须始终包含UTF-8编码或7位ASCII文本 | string | String | str/unicode | string | String (UTF-8) | string | string |
| bytes | 可以包含任意的字节序列 | string | ByteString | str | []byte | String (ASCII-8BIT) | ByteString | string |
更多有关编码信息,可以查看 谷歌文档(protobuf编码) 需翻墙
字段默认值
当消息被解析时,如果编码的消息不包含特定的单个元素(字段),则解析对象中的相应字段将被设置为该字段的默认值。 这些默认值是特定于类型的:
- 对于字符串,默认值为空字符串
- 对于字节,默认值为空字节。
- 对于bools,默认值为false。
- 对于数值类型,默认值为零。
- 对于枚举,默认值是第一个定义的枚举值,它必须为0。
- 对于消息字段,这个要看具体实现的语言
以上所述就是小编给大家介绍的《Protocol Buffers 学习(2):字段类型和其他语言字段类型之间的映射》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- Protocol Buffers 学习(2):字段类型和其他语言字段类型之间的映射
- presto中不同类型的字段关联问题
- EasyMybatis 1.2.0 发布,支持枚举类型字段
- hive使用struct、map与array类型字段
- yii2 数据库查询结果字段类型的问题
- Date类型字段反序列化后值发生变化问题
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
微信民族志、自媒体时代的知识生产与文化实践
赵旭东 / 中国社会科学出版社 / 2017-9 / 98.00元
进入二十一世纪以来,随着网络技术的发展,自媒体的悄然登场深度影响着我们的日常生活。中国社会中自媒体通讯方式的普及以及随之而有的一种文化书写的新形式——微信民族志的出现使原有文化秩序中时空意义发生转变的同时,也在重新塑造着以研究异文化为己任的人类学学科自身的成长、转型与发展。在此种情境之下,由中国人民大学人类学研究所、中国人民大学国家发展与战略研究院、中国人民大学社会学理论与方法研究中心、《探索与争......一起来看看 《微信民族志、自媒体时代的知识生产与文化实践》 这本书的介绍吧!