一 下载
Google下载地址:https://developers.google.com/protocol-buffers/docs/downloads?hl=zh-CN
Github下载地址:https://github.com/google/protobuf
我这里下载版本:protobuf-2.6.1.tar.gz
二 编译
1 解压
将上面的压缩包解压到文件夹 protobuf-2.6.1 中。
2 编译
2.1 在protobuf-2.6.1中,找到vsprojects/protobuf.sln,双击用vs打开。
2.2 设置编译模式为Release模式,依次编译libprotobuf,libprotobuf-lite,libprotoc,protoc(右键->生成)。
3 拷贝库
在vsprojects\Release找到libprotobuf.lib,libprotobuf-lite.lib,libprotoc.lib和protoc.exe,拷贝到c:\windows目录。
4 生成头文件
双击extract_includes.bat,就会在vsprojects目录下生成一个include目录。
三 编译proto
1 在D:/gpb目录下新建person.proto,编辑内容如下:
package proto; message Person { required string name = 1; required int32 id = 2; optional string email = 3; }
#gpb即Google protocol buffer
2 生成C++类
在gpb文件中,右键->在此处打开命令行,输入:
protoc.exe person.proto --cpp_out=.
这样就在当前文件夹下面生成了person类,文件如下:
四 prote详解
1 关键字
package关键字是指定命名空间
message关键字,类似C中的struct或者C++和Java中的class
2 属性说明
required非空字段
optional可选字段
repeated表示的字段可以包含0个或多个数据。
3 类型
如图:
原文链接:http://blog.csdn.net/xufeng0991/article/details/45031211