google proto buf学习
protobuf是Google开发的一个序列化框架,类似XML,JSON,基于二进制,比传统的XML表示同样一段内容要短小得多。通过protobuf,可以很轻松的调用相关方法来完成业务数据的序列化与反序列化
1.proto文件,google buffer的原型文件。通过protoc.exe --cpp_out生成对应的cpp文件,
通过protoc.exe –I生成对应的二进制文件(.proto文件)。syntax = "proto2";表示协议版本。
2.repeated类型的使用:相当于std的vector。
message Person {
required int32 age = 1;
required string name = 2;
}
message Family {
repeated Person person = 1;
}
Family family;
Person* person;
person = family.add_person(); // 添加一个家庭成员,John
person->set_age(25);
person->set_name("John");
person = family.add_person(); // 添加一个家庭成员,Lucy
person->set_age(23);
person->set_name("Lucy");
// 显示所有家庭成员
int size = family.person_size();
for(int i=0; i<size; i++) {
Person psn = family.person(i);
cout << i+1 << ". " << psn.name() << ", 年龄 " << psn.age() << endl;
}
转载于:https://my.oschina.net/yizhangxyz/blog/868893
最新文章
- JSBinding / FAQ &; Trouble Shooting
- vmware 虚拟机克隆之后配IP重启网络失败
- SQL行转列和列转行
- 实现多项式的JAVA类
- CRF模型
- 【19】设计class犹如设计type
- 浅谈用java解析xml文档(一)
- Error (0xc0000225) installing Windows 8 R2 on VirtualBox
- 支付宝移动支付开发详细教程服务端采用.net mvc webapi(C#)
- ajax-post请求
- 企业微信快捷接入Odoo的模块——WeOdoo
- SpringBoot实现标准的OAuth服务提供商
- Nginx+Tomcat+Memcached部署
- 037 关于pom.xml的一些问题的理解
- 【转】你必须知道的EF知识和经验
- Zookeeper基本数据模型
- iPhone 获取指定格式的时间和日期
- SpringBoot中Redis的set、map、list、value、实体类等基本操作介绍
- POJ 1679 The Unique MST (次小生成树)题解
- UIScrollview 与 Autolayout 的那点事