本部分纯属练手,参考对protobuf的理解,自己实现一套类似的结构处理,达成的目标:任意两个结构的数据都可以通过中间结构互换,如:
struct Person
{
int age;
std::string name;
}per;
struct Student
{
int age;
std::string sex;
std::string name;
}stu;
Jack jack;
jack = stu;
jack.get(per);
备注:
1)中间结构是用自己的英文名Jack命名的;
2)本结构纯属练手,并没有实现用于协议传输的那一部分;
3)工程目录结构如下(结构的每个对象都对应一个Jack对象、取值是存放在JackNode中):
1)main.cpp test_struct.h是用于测试的文件;
2)jack.h jack_node.h 完成结构和结构节点的定义;
3)jack_get.h、jack_set.h 完成目标类型数据对Jack结构对象的赋值和获取;
4)jack_struct.h 针对目标是结构体类型数据的特化处理;