博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
protobuf repeated类型的使用
阅读量:4142 次
发布时间:2019-05-25

本文共 1023 字,大约阅读时间需要 3 分钟。

       转载地址:http://www.cppblog.com/API/archive/2014/12/09/209070.aspx

       protobuf是Google开发的一个序列化框架,类似XML,JSON,基于二进制,比传统的XML表示同样一段内容要短小得多。通过protobuf,可以很轻松的调用相关方法来完成业务数据的序列化与反序列化。protobuf repeated类型相当于std的vector,可以用来存放N个相同类型的内容,文章将简单介绍protobuf repeated的使用。

首先定义一个protobuf结构,如下:

message Person {
  required int32 age = 1;
  required 
string name = 2;
}
message Family {
  repeated Person person = 1;
}

下面我们以例子简单说明如何使用:

int main(
int argc, 
char* argv[])
{
    GOOGLE_PROTOBUF_VERIFY_VERSION;
    Family family;
    Person* person;
    
//
 添加一个家庭成员,John
    person = family.add_person();
    person->set_age(25);
    person->set_name("John");
    
//
 添加一个家庭成员,Lucy
    person = family.add_person();
    person->set_age(23);
    person->set_name("Lucy");
    
//
 添加一个家庭成员,Tony
    person = family.add_person();
    person->set_age(2);
    person->set_name("Tony");
    
//
 显示所有家庭成员
    
int size = family.person_size();
    cout << "这个家庭有 " << size << " 个成员,如下:" << endl;
    
for(
int i=0; i<size; i++)
    {
        Person psn = family.person(i);
        cout << i+1 << ". " << psn.name() << ", 年龄 " << psn.age() << endl;
    }
    getchar();
    
return 0;
}
你可能感兴趣的文章
3.5 YOLO9000: Better,Faster,Stronger(YOLO9000:更好,更快,更强)
查看>>
iOS菜鸟学习--如何避免两个按钮同时响应
查看>>
How to access the keys in dictionary in object-c
查看>>
iOS菜鸟学习—— NSSortDescriptor的使用
查看>>
hdu 3787 hdoj 3787
查看>>
hdu 3790 hdoj 3790
查看>>
hdu 3789 hdoj 3789
查看>>
hdu 3788 hdoj 3788
查看>>
zju 1003 zoj 1003
查看>>
zju 1004 zoj 1004
查看>>
zju 1005 zoj 1005
查看>>
zju 1006 zoj 1006
查看>>
【虚拟机】虚拟化架构与系统部署(Windows系统安装)
查看>>
字节跳动安卓开发实习生面试分享
查看>>
好书分享之——《能力陷进》
查看>>
阅读笔记《c++ primer》
查看>>
阅读笔记《C++标准程序库》
查看>>
基于mirror driver的windows屏幕录像
查看>>
C语言8
查看>>
Qt实现简单延时
查看>>