1、测试用例:
syntax = "proto2";
package dong;
message PersonInfo{
required string name = 1;
required uint32 age = 2;
required uint32 phone_num = 3;
}
message Person{
repeated PersonInfo people = 1;
}
2、
// protobuf_test.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//
#include <iostream>
#include <fstream>
#include "Person.pb.h"
using namespace std;
//用途:用户传递一个消息类型的字符串,那么这个工厂就能帮助我们构造出对应的类的实例
//"Person"字符串-->构造出Person的实例-->返回的是一个基类Messge类的指针:
//这个就是基类指针指向子类实例
//create_message 返回的 ,需要用delete来删除msg对象实例
google::protobuf::Message* create_message(const char* typeName) {
google::protobuf::Message* message = NULL;
/*
generated_pool():获取一个指向“