显示页面过去修订反向链接回到顶部 本页面只读。您可以查看源文件,但不能更改它。如果您觉得这是系统错误,请联系管理员。 ====== Protocol Buffers ====== ===== 教程 ===== * [[https://developers.google.com/protocol-buffers/docs/cpptutorial|official tutorial]] * 三步: - 定义 ''<name>.proto'' 文件,语法见[[https://developers.google.com/protocol-buffers/docs/proto3|Protocol Buffer Language Guide]] - 使用编译工具 ''protoc'' 来编译 ''.proto''文件来生成对应语言的代码文件 - 接口使用,消息成员变量操作接口''<key>''、''has_<key>''、''set_<key>''、''clear_<key>''等, 可查看[[https://developers.google.com/protocol-buffers/docs/reference/cpp-generated|cpp-generated]]; 以及消息整体的操作''IsInitialized()''、''DebugString()''、''CopyFrom''、''Clear()''等, 可查看 [[https://developers.google.com/protocol-buffers/docs/reference/cpp/google.protobuf.message#Message|Message]]; 以及最重要的序列化与反序列化接口''SerializeToString''、''ParseFromString''等,同样可查看 [[https://developers.google.com/protocol-buffers/docs/reference/cpp/google.protobuf.message#Message|Message]] ==== Tips ==== * 不定类型的可用 [[https://developers.google.com/protocol-buffers/docs/proto3#any|any]] * 序列化的二进制格式详见[[https://developers.google.com/protocol-buffers/docs/encoding|encoding]] * 对时间的处理[[https://developers.google.com/protocol-buffers/docs/reference/cpp/google.protobuf.util.time_util|time_util]] * proto3 增加了序列化为json格式的接口[[https://developers.google.com/protocol-buffers/docs/reference/cpp/google.protobuf.util.json_util|json_util]] <WRAP center round tip 60%> 以上链接大部分为c++链接, protobuf支持的其它语言比如Java,Go等,其接口链接要去官网对应的文档查看 </WRAP> public/it/protobuff.txt 最后更改: 2021/10/18 14:01由 oakfire