person.proto
syntax = "proto3";
import "google/protobuf/any.proto";
message Apply_data
{
uint32 apply_data_id = 1;
uint64 apply_time = 2;
}
message Apply_list
{
uint32 apply_list_id = 1;
}
message Test
{
int32 id = 1;
google.protobuf.Any data = 2;
}
main.cpp
#include <iostream>
#include "person.pb.h"
#include "MsgHead.h"
#include <google/protobuf/any.h>
#include <google/protobuf/any.pb.h>
using namespace std;
typedef google::protobuf::Message GPMessage;
typedef google::protobuf::Any Any;
void checkAny(const Test& test) {
if (!test.has_data()) {
cout << "not has_data" << endl;
return ;
}
Apply_data data1;
Apply_list list1;
//判断是否是和发的proto any
//if (!test.mutable_data()->UnpackTo(&data1)) {
if (test.d